| 01-10-2006, 03:23 AM | #1 |
My first attempt at the JESP standard, I worked rather long and hard on these, and I feel they are even better then my first attempts at JASS. Includes: Toxic Grenade - toss a grenade to area, stun and damage enemies, put a bunch of nasty negative buffs on em and they burn with fiery effects for a short time Lightning Fury - sort of like the skill from D2, you cast lightning in the target, it splits and 2 other bolts jump to random units in the area, each having a chance to combust on impact and explode, dealing AOE damage to enemies around the target with neat effects Frost Nova ( pictured) - a rather simple frost nova spell, though somewhat different then others, with some really neat effects and buff, it is pretty simplistic, but every aspect can be customized, which I feel adds to it's luster hope they make it Vex, please be kind ! :)***edit : to follow the JESP standard closer, sept for one little thing.... :( **Edit: uploaded for hopefully the last time :), I think it's good now |
| 01-10-2006, 12:23 PM | #2 |
You will need to change some things if you want them to be approved: 1. If you want your spells to follow the JESP standard, they must do so. To make it follow the JESP standard, all function names must start with the spells code name + _. Let's take the Toxic Grenade spells as an example. For the spell to follow the JESP standard, all function names must start with "Toxic_Grenade_" followed by the name. Some of the functions does this, but some does not (examples: Grenade_Enemies, Destroy_Trees, Trig_Toxic_Grenade_Actions). It is not only on this spell, I just used that as an example. There's another place where it doesn't fit the standard: you just use effect strings directly in the script. Add configuration options so you easily can change it, or even better make it extract the values from Object Editor. To allow users to be able to use other dummy spells, also please make configuration function for orders. 2. Fix loaction leaks. You know how to do it, and you do it with all locations that you store in local variables, but several places you just call GetUnitLoc(..) without ever removing it (example: when you calculate how long to wait in your TriggerSleepAction calls). 3. Not needed, but please give user an explenation about the functions you have in the Custom Script Section and tell them that they need to copy it and how to do so. Suggestions: Replace GetUnitAbilityLevelSwapped(abilID, unit) with GetUnitAbilityLevel(unit, abilID). And remove == true boolean comparasions, the == true is not needed at all. |
| 01-11-2006, 02:35 AM | #3 | |
Quote:
how exactly do I store the effect for calling? like, what would this part be constant function Toxic_Grenade_Effects takes "something" returns "something" and what kind of variable should I store it as? or better yet, how do I extract it from the object editor? other then that I think I fixed everything else, reuploaded, take a look |
| 01-11-2006, 02:35 PM | #4 |
If you want to have it as a configuration function, it must return the type string. JASS:native GetAbilityEffectById takes integer abilityId, effecttype t, integer index returns string Use this native to get the effect from an ability. 'abilityId' is of course the ability's rawcode, 't' is the effect type, for example EFFECT_TYPE_MISSILE or EFFECT_TYPE_SPECIAL - names are like the ones in OE, just check common.j or something else to see them all. 'index' is the number of the effect in that field, starting from 0. Eventually look at Vexorian's spells, my spells and other spells that uses it, if you want examples. Lightning fury still has location leaks, fix it, please. |
| 01-11-2006, 09:02 PM | #5 | |
Quote:
blarg this is the last thing I need to cahnge to get it right, but I am still lost what should I do to just store an effect model then call that function when I would have the effect model ex. constant function Toxic_Grenade_Effects takes "something" returns string return "Objects\\Spawnmodels\\Other\\NeutralBuildingExplosion\\NeutralBuildingExplosion.mdl" //Effect of spell endfunction (something like tha above, though I am not sure it would work) call DestroyEffect(AddSpecialEffect(Toxic_Grenade_Effects(),GetLocationX(L),GetLocationY(L))) |
| 01-11-2006, 09:06 PM | #6 |
Exactly, and I would make it take nothing, I don't think there is need for an effect model to be changed on a level basis, but that's your decision. Search your script for GetUnitLoc, and see where it's just created and not removed. And then fix it. |
| 01-11-2006, 10:17 PM | #7 | |
Quote:
aight I think it's good now... I hope... ![]() |
| 01-12-2006, 12:11 PM | #8 |
Approved :). |
| 04-11-2006, 09:14 PM | #9 |
ok this is what happen i was putting this spell in my map.. i copy the spell and dummy and the script on the bottem and after i try to save my map it said "expect a name" how can i fix this ![]() |
