Rieccomi a parlare di war!
Se avete scaricato la spell vedrete che è diversa da quella che descriverò quì sotto, per il semplice motivo che questa è semplificata e migliorata.
Dopo aver settato tutte le variabili nella precedente lezione, possiamo iniziare a buttare giù codici
Creaimo un IF multiple Functions, nel quale ci metteremo tutta la spell.
Settiamogli subito una condizione per determinare quando dovrà “spiroettare” >: D
Selezionate Integer Comparison e settatelo in modo da ottenere questo:
Aggiungiamo anche:
(Level of Dance of Axe for Axe_Caster) Maggiore di 0
Seconda condizione del primo IF
Se tutte le condizioni si verificano, si svolgeranno le azioni che si trovano in “Allora” (in caso contrario si verificano le azioni che si trovano in “Altrimenti”)
Andate in AZIONI(dell’IF) e Scegliete: Gruppo di Unità
Subito dopo settiamo una variabile:
Set Axe_Damage[(Level of Dance of Axe for Axe_Caster)] = (Axe_Damage[(Level of Dance of Axe for Axe_Caster)] + (Random real number between 0.00 and 15.00))
Questo non è necessario ma è solo per dare un tocco di classe alla spell ![]()
Ecco una breve descrizione:
Setta la variabile Axe_Damage al numero dell’array corrispondende al livello della spell Dance of Axe di Axe_Caster(hero). è uguale(=) a sestesso(tutto quello detto prima) + un numero randon compreso tra Zero(0.00) e 15.
Well.. Ora.. Inseriamo un altro IF dentro il Gruppo di Unità e inseriamo queste 3 condizioni:
- (Owner of (Picked unit)) Diverso da Axe_Owner
Se Il possessore di Picked Unit(l’unita rilevata dal giro delle unità generato dal “Gruppo di unità”) è diverso dal Caster.. - ((Owner of (Picked unit)) is an ally of Axe_Owner) Uguale a FALSE
Se il possessore di un unità rilevata NON è un alleato del Caster.. (sarebbe andato bene anche: ((Picked player) is an ally of Axe_Owner) Uguale a FALSE) - ((Picked unit) is dead) Uguale a FALSE
e.. Se l’unità non è morta, cioè viva..
In “Azioni” inseriamo Unità – Damage Target e configuriamolo così:
Unità – Cause Axe_Caster to damage (Picked unit), dealing Axe_Damage[(Level of Dance of Axe for Axe_Caster)] damage of attack type Normale and damage type Normale
Spiegazione: Causa un danno da Axe_Caster a Picked Unit infliggendo un danno pari a Axe_Damage[(Level of Dance of Axe for Axe_Caster)] e il tipo di danno.. Normale è un danno fisico, e non verrà ridotto con oggetti/abilità che riducono il danno magico, e in più con aura vampirica(o simili) il Caster acquisirà HP!
Fatto ciò diamo a Grom l’animazione che più si addice, cioè “Attack Walk Stand Spin”
Animazione – Play Axe_Caster’s Attack Walk Stand Spin animation
Inseriamo anche un effetto speciale, un pò di sangue perso dalle unità nemiche..
Effetto speciale – Create a special effect attached to the origin of (Picked unit) using Objects\Spawnmodels\Human\HumanBlood\BloodElfSpellThiefBlood.mdl
** Questo passaggio NON è obbligatorio, serve per visualizzare il danno provocato ad ogni unità! **
Aggiungere un IF con la seguente condizione:
System_Dance_of_Axe Uguale a TRUE
System_Dance_of_Axe è una variabile(boolean) che può essere attivata e disattivata da un altro trigger.
Allora – Azioni
Testo fluttuante – Create floating text that reads ((String((Integer(Axe_Damage[(Level of Dance of Axe for Axe_Caster)])))) + !) above (Picked unit) with Z offset 0.00, using font size 10.00, color (80.00%, 30.00%, 30.00%), and 0.00% transparency
Testo fluttuante – Change (Last created floating text): Disattiva permanence
Testo fluttuante – Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
Testo fluttuante – Change the fading age of (Last created floating text) to 2.00 seconds
Testo fluttuante – Change the lifespan of (Last created floating text) to 5.00 seconds
Questi ultimi 3 valori posso essere modificati a propria scelta, riguardano la distanza, la velocità di spostamento, la vita e il fade del testo.
** Fine della visualizzazione del danno **
Infine, inserire un Wait di durata 0.27. E’ la precisa durata dell’animazione..
Wait 0.27 seconds
Allo scadere di questo tempo dobbiamo resettare grom per farlo tornare normale;
Animazione – Reset Axe_Caster’s animation
Infine eliminiamo i residui ![]()
Effetto speciale – Destroy (Last created special effect)
Risultato finale:
Per attivare o disattivare la visuale del danno:
Attiva Disattiva Axe
Eventi
Giocatore – Giocatore types a chat message containing -damage as Corrispondenza esatta
Azioni
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Se – Condizioni
System_Dance_of_Axe Uguale a TRUE
Allora – Azioni
Set System_Dance_of_Axe = FALSE
Partita – Display to (All players) the text: |cff7777aaVisuale danno Dance of Axe disattivato.|r
Altrimenti – Azioni
Set System_Dance_of_Axe = TRUE
Partita – Display to (All players) the text: |cff7777aaVisuale danno Dance of Axe Attivo.|r
Per chiarimenti, domande, consigli, critiche lasciate un commento! HF!
Alla prossima lezione
Tags: azioni, condizioni, creare, creare spell, custom, Editor, eventi, guida, lezioni, make, passo passo, personalizzate, spell, variabili, warcraft3, world editor
Prissimo articolo Improved tagboard v1.1
Articolo precedente [World Editor] Aprire e chiudere un portale da chat



settembre 28th, 2009 at 14:16
[...] variabili, e fare in modo che il trigger si avvii..! Se avete domande non esitate a chiedere! · Lezione successiva > [...]
novembre 3rd, 2009 at 17:22
è possibile cambiare l’aspetto delle unità? tipo vorrei creare un arciere elfo maschio simile a quello di warcraft 1. è possibile una cosa del genere????
novembre 3rd, 2009 at 18:35
Ma certo, basta andare nell’aditor oggetti(F6), cliccare sul icona con l’elmo (vicino a copia/incolla) (oppure CTRL+Maiusc+N) e selezionare un unità di base, dopo di che scorri tra le opzioni delle unità fino a: Grafica – Modello.
Doppio click e metti quello che vuoi!
novembre 14th, 2009 at 22:52
scusa se non ti ho ancora ringraziato,ma ho recuperato solo oggi la connessione ad internet.cmq non intendevo questo. intendevo se è possibile cambiare l’aspetto delle unità creando dei modelli grafici personalizzati. tipo mettere la testa di una unità e il corpo di un’altra. non credevo fosse possibile,ma ho visto su internet alcune immagini di unità non-morte a cui avevano aggiunto degli aculei..
novembre 14th, 2009 at 23:38
Intendi proprio modificare i modelli, o li scarichi pronti o impari a farli..! Questa è la guida di DonDustin che spiega come fare http://www.hiveworkshop.com/forums/3d-modeling-tutorials-282/create-models-only-free-tools-107544/#post912011(in inglese).
Sempre sullo stesso sito, http://www.hiveworkshop.com/forums/models.php puoi scaricare tutti i modelli che ti piacciono!
Per importali usa il manager di importazione(F12).