Worldedit
  Worldedit
Le site sur l'éditeur de warcraft 3 !
 
  FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs   medals.php?sid=47b69cd2710f9aec852535a2d077a623Médailles   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 
  FAQFAQ World Editor   UploadUploader une map ou une image    UploadAjouter sa map à l'annuaire   UploadConsulter l'annuaire

[GUI] [MUI] Orbes de lumière

 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Les sorts -> Modèles
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 gisgalion
Membre honoraire


Inscrit le: 30 Oct 2013
Messages: 284
Sujets: 21
Spécialité en worldedit: Spellmaker


MessagePosté le: 25/11/18 16:40    Sujet du message: [GUI] [MUI] Orbes de lumière Citer

Bonjour ! Ça faisait longtemps que je n'avais pas posté sur le forum (même si je n'avais pas arrêté de le lire) et, à vrai dire, assez longtemps que je n'avais pas mappé sur W3. J'espère que tout va bien pour tout le monde ici en tous cas. Pour me dérouiller un peu, je me suis essayée à refaire un sort. Normalement, le sort devrait être MUI et (je crois ?) leakless. Ceci étant, comme dit précédemment, cela fait vraiment longtemps que je n'avais pas fait de sorts sur W3 et j'avais un peu perdu la main : il est donc tout à fait possible que quelques erreurs se soient glissées malgré tout.

Evidemment le sort n'est pas réellement bien qualibré, libre à chacun de modifier les valeurs dans l'éditeur (notamment pour tout ce qui est temps de recharge, coût en mana etc...)

J'ai essayé de rendre le sort aussi facilement modifiable que possible, donc celleux qui souhaiteraient l'utiliser en changeant des valeurs, tout devrait être facilement accessible dans le déclencheur LO Initialization Var.

Ah et une dernière chose. J'ai choisi une solution de facilité en rendant le sort essentiellement monocible mais je pensais potentiellement le modifier pour qu'en ajoutant des cibles au sort du dummy (basé sur chaîne d'éclair) le sort puisse infliger des dégâts à toutes les unités touchées. Si je le fais je mettrai la nouvelle version en-dessous !

Télécharger !

Variables :
Secret:

LO_Ability : Capacité
LO_Angle_Cible : Réel
LO_Angle_Max : Réel
LO_AngleLocal : Réel
LO_AttackType : Type d'attaque
LO_Caster : Unité
LO_Damage : Réel
LO_DamageIni : Réel déploiement
LO_Distance_Cible : Réel
LO_DistanceMax : Réel
LO_DmgType : Type de dégât
LO_EcartMax : Réel
LO_GrpCasters : Groupe unité
LO_GrpOrbs : Groupe unité
LO_Hashtable : Table de Hachage
LO_Nb_Orbes : Entier Déploiement
LO_OrbsPoint : Point
LO_Orbs : Entier
LO_OrbsGrowthCurrent : Réel
LO_OrbsGrowthRate : Réel
LO_Target : Unité
LO_Timer : Réel
LO_TimerMax : Réel
LO_TimerMax_Ini : Réel Déploiement
LO_TimerReduction : Réel
LO_TimerReduction_Ini : Réel déploiement



Initialisation des variables :
Secret:

Gui:
Trigger:
LO Initialization Var
Collapse Evénements
Map initialization
Conditions
Collapse Actions
Table de hachage - Create a hashtable
Set LO_Hashtable = (Last created hashtable)
Set LO_Ability = Light Orbs
Set LO_DmgType = Divin
Set LO_AttackType = Sorts
-------- Angle max = L'écart entre les orbes. Un angle max plus important augmentera l'écart en éloignant le point d'apparition du premier et du dernier orbe --------
Set LO_Angle_Max = 60.00
-------- Ecart max = L'écart supplémentaire maximum que vous voulez appliquer pour laisser une distance raisonnable entre les orbes en lançant le sort à courte distance. --------
Set LO_EcartMax = 15.00
Set LO_DistanceMax = 700.00
-------- Orbs Growth Rate = La vitesse à laquelle les orbes vont s'agrandir (en %). Laisser une valeur faible est conseillé. --------
Set LO_OrbsGrowthRate = 1.00
Set LO_Nb_Orbes[1] = 3
Set LO_Nb_Orbes[2] = 5
Set LO_Nb_Orbes[3] = 7
Set LO_TimerMax_Ini[1] = 50.00
Set LO_TimerMax_Ini[2] = 50.00
Set LO_TimerMax_Ini[3] = 50.00
Set LO_TimerReduction_Ini[1] = 1.00
Set LO_TimerReduction_Ini[2] = 1.00
Set LO_TimerReduction_Ini[3] = 1.00
Set LO_DamagesIni[1] = 9.00
Set LO_DamagesIni[2] = 9.00
Set LO_DamagesIni[3] = 9.00


Lancement du sort
Secret:

Gui:
Trigger:
Light Orbs
Collapse Evénements
Unité - A unit Initie l'effet d'une compétence
Collapse Conditions
(Ability being cast) Egal à LO_Ability
Collapse Actions
Set LO_Target = (Target unit of ability being cast)
Set LO_Caster = (Triggering unit)
Set LO_Damage = LO_DamagesIni[(Level of LO_Ability for LO_Caster)]
Set LO_TimerMax = LO_TimerMax_Ini[(Level of LO_Ability for LO_Caster)]
Set LO_TimerReduction = LO_TimerReduction_Ini[(Level of LO_Ability for LO_Caster)]
Set LO_Timer = (LO_TimerMax / 4.00)
Set LO_Distance_Cible = (25.00 + (Distance between (Position of LO_Caster) and (Position of LO_Target)))
Set LO_Angle_Cible = (Angle from (Position of LO_Caster) to (Position of LO_Target))
Set LO_Orbs = (LO_Nb_Orbes[(Level of Light Orbs  for LO_Caster)] - 1)
Set LO_ANgleLocal = (LO_Angle_Max + ((LO_DistanceMax - LO_Distance_Cible) / LO_EcartMax))
Set LO_OrbsGrowthCurrent = 100.00
Collapse For each (Integer A) from 0 to LO_Orbs, do (Actions)
Collapse Boucle - Actions
Set LO_OrbPoint = ((Position of LO_Target) offset by LO_Distance_Cible towards ((LO_Angle_Cible + (180.00 - (LO_ANgleLocal / 2.00))) + ((LO_ANgleLocal / (Real(LO_Orbs))) x (Real((Integer A))))) degrees)
Unité - Create 1 Dummy Light ball for (Owner of LO_Caster) at LO_OrbPoint facing Orientation bâtiment par défaut degrees
Unité - Change color of (Last created unit) to Jaune
Animation - Change (Last created unit) flying height to ((Current flying height of LO_Caster) + 150.00) at 999999.00
Groupe unité - Add (Last created unit) to LO_GrpOrbs
Custom script:   call RemoveLocation( udg_LO_OrbPoint )
Groupe unité - Add LO_Caster to LO_GrpCasters
Table de hachage - Save Handle OfLO_Target as 1 of (Key (Triggering unit)) in LO_Hashtable
Table de hachage - Save LO_Damage as 2 of (Key (Triggering unit)) in LO_Hashtable
Table de hachage - Save LO_Timer as 3 of (Key (Triggering unit)) in LO_Hashtable
Table de hachage - Save LO_TimerMax as 4 of (Key (Triggering unit)) in LO_Hashtable
Table de hachage - Save LO_TimerReduction as 5 of (Key (Triggering unit)) in LO_Hashtable
Table de hachage - Save Handle OfLO_GrpOrbs as 6 of (Key (Triggering unit)) in LO_Hashtable
Table de hachage - Save LO_OrbsGrowthCurrent as 7 of (Key (Triggering unit)) in LO_Hashtable
Déclencheur - Turn on LO Timer <gen>



Activation via timer :
Secret:

Gui:
Trigger:
LO Timer
Collapse Evénements
Temps - Every 0.03 seconds of game time
Conditions
Collapse Actions
Collapse Groupe unité - Pick every unit in LO_GrpCasters and do (Actions)
Collapse Boucle - Actions
Set LO_Caster = (Picked unit)
Set LO_Timer = (Load 3 of (Key (Picked unit)) from LO_Hashtable)
Set LO_TimerMax = (Load 4 of (Key (Picked unit)) from LO_Hashtable)
Set LO_TimerReduction = (Load 5 of (Key (Picked unit)) from LO_Hashtable)
Set LO_Timer = (LO_Timer - LO_TimerReduction)
Set LO_GrpOrbs = (Load 6 of (Key (Picked unit)) in LO_Hashtable)
Table de hachage - Save Handle OfLO_GrpOrbs as 6 of (Key (Triggering unit)) in LO_Hashtable
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
LO_Timer Inférieur ou égal à 0.00
Collapse Alors - Actions
Set LO_Target = (Load 1 of (Key (Picked unit)) in LO_Hashtable)
Set LO_Damage = (Load 2 of (Key (Picked unit)) from LO_Hashtable)
Set LO_OrbsGrowthCurrent = 80.00
Collapse Groupe unité - Pick every unit in LO_GrpOrbs and do (Actions)
Collapse Boucle - Actions
Animation - Change (Picked unit)'s size to (LO_OrbsGrowthCurrent%, LO_OrbsGrowthCurrent%, LO_OrbsGrowthCurrent%) of its original size
Unité - Order (Picked unit) to Prophète orc - Chaîne d'éclairs LO_Target
Unité - Cause LO_Caster to damage LO_Target, dealing LO_Damage damage of attack type LO_AttackType and damage type LO_DmgType
Set LO_Timer = LO_TimerMax
Collapse Sinon - Actions
Set LO_OrbsGrowthCurrent = (Load 7 of (Key (Picked unit)) from LO_Hashtable)
Set LO_OrbsGrowthCurrent = (LO_OrbsGrowthCurrent + LO_OrbsGrowthRate)
Collapse Groupe unité - Pick every unit in LO_GrpOrbs and do (Actions)
Collapse Boucle - Actions
Animation - Change (Picked unit)'s size to (LO_OrbsGrowthCurrent%, LO_OrbsGrowthCurrent%, LO_OrbsGrowthCurrent%) of its original size
Table de hachage - Save LO_Timer as 3 of (Key (Picked unit)) in LO_Hashtable
Table de hachage - Save LO_OrbsGrowthCurrent as 7 of (Key (Picked unit)) in LO_Hashtable
Collapse Groupe unité - Pick every unit in LO_GrpOrbs and do (Actions)
Collapse Boucle - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
((Picked unit) is dead) Egal à TRUE
Collapse Alors - Actions
Groupe unité - Remove (Picked unit) from LO_GrpOrbs
Groupe unité - Remove LO_Caster from LO_GrpCasters
Table de hachage - Clear all child hashtables of child (Key (Picked unit)) in LO_Hashtable
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(LO_GrpCasters is empty) Egal à TRUE
Collapse Alors - Actions
Déclencheur - Turn off (This trigger)
Collapse Sinon - Actions



Voilà ! Sur ce, j'espère que ce sort vous plaît, il n'est pas particulièrement complexe ou même graphiquement spectaculaire mais c'était in fine une manière assez plaisante de s'y remettre.
_________________
Le vaste monde vous entoure de tous côtés ; vous pouvez vous enclore, mais vous ne pouvez éternellement le tenir en dehors de vos clôtures.

John Ronald Reuel Tolkien.

Hâtez-vous lentement, et sans perdre courage,
Vingt fois sur le métier remettez votre ouvrage.
Polissez-le sans cesse, et le repolissez.
Ajoutez quelquefois, et souvent effacez.

Boileau
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Hisoka
Membre actif


Inscrit le: 10 Sep 2014
Messages: 116
Sujets: 3
Spécialité en worldedit: Scénario/cinématiques/effets spéciaux


MessagePosté le: 29/11/18 10:00    Sujet du message: Citer

Merci pour le partage Smile
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Les sorts -> Modèles Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com