Salut Tom,
Pour Morgoth, je garde ce nom pour l’exemple, mais évidemment tu peux changer par ce que tu veux.
1. Le code du héros:
- Tu choisis un personnage de base (par ex: Saruman) dont tu renommes l’object (donc Morgoth)
- dans ce code, tu vas rajouter ceux des personnages en lesquels tu veux qu’il se transforme (Balrog, Sauron, Loup d’Angmar etc.) sans les childobject, et tu renommes les object (par ex: MorgothBalrog, MorgothSauron, MorgothShadeWolf etc.)
- Ensuite, dans la partie du code de Saruman tu mets ces modules:
Behavior = SpecialPowerModule ModuleTag_HorseToggleStarter
SpecialPowerTemplate = SpecialAbilityToggleMounted
UpdateModuleStartsAttack = Yes
StartsPaused = No
;InitiateSound = UN SON DE TON CHOIX
End
Behavior = ToggleMountedSpecialAbilityUpdate ModuleTag_HorseToggle
SpecialPowerTemplate = SpecialAbilityToggleMounted
StartAbilityRange = 50.0
MountedTemplate = MorgothBalrog
UnpackTime = 0
PreparationTime = 1
PackTime = 0
OpacityTarget = 1
AwardXPForTriggering = 0
IgnoreFacingCheck = Yes
End
(ce module sert à la transformation en Balrog, dans la ligne mountedtemplate doit apparaître le nom ton object qui est ici MorgothBalrog)
Behavior = SpecialPowerModule ModuleTag_HorseToggleStarter1
SpecialPowerTemplate = SpecialAbilityToggleMountedSauron
UpdateModuleStartsAttack = Yes
StartsPaused = No
;InitiateSound = UN SON DE TON CHOIX
End
Behavior = ToggleMountedSpecialAbilityUpdate ModuleTag_HorseToggle1
SpecialPowerTemplate = SpecialAbilityToggleMountedSauron
StartAbilityRange = 50.0
MountedTemplate = MorgothSauron
UnpackTime = 0
PreparationTime = 1
PackTime = 0
OpacityTarget = 1
AwardXPForTriggering = 0
IgnoreFacingCheck = Yes
End
(module pour transformation en Sauron)
Behavior = SpecialPowerModule ModuleTag_HorseToggleStarter2
SpecialPowerTemplate = SpecialAbilityToggleMountedLoup
UpdateModuleStartsAttack = Yes
StartsPaused = No
;InitiateSound = UN SON DE TON CHOIX
End
Behavior = ToggleMountedSpecialAbilityUpdate ModuleTag_HorseToggle2
SpecialPowerTemplate = SpecialAbilityToggleMountedLoup
StartAbilityRange = 50.0
MountedTemplate = MorgothShadeWolf
UnpackTime = 0
PreparationTime = 1
PackTime = 0
OpacityTarget = 1
AwardXPForTriggering = 0
IgnoreFacingCheck = Yes
End
(module pour transformation en Loup de l’Angmar)
- Maintenant, il faut permettre à ton personnage de revenir à sa forme initiale après chaques transformations, tu mets donc dans les codes de MorgothBalrog, MorgothSauron et MorgothShadeWolf ce module:
Behavior = SpecialPowerModule ModuleTag_DismountStarter
SpecialPowerTemplate = SpecialAbilityToggleMountedFromFellBeast
UpdateModuleStartsAttack = Yes
StartsPaused = No
;InitiateSound = UN SON DE TON CHOIX
End
Behavior = ToggleMountedSpecialAbilityUpdate ModuleTag_Dismount
SpecialPowerTemplate = SpecialAbilityToggleMountedFromFellBeast
StartAbilityRange = 50.0
MountedTemplate = Morgoth
SynchronizeTimerOnSpecialPower = SpecialAbilityCurseEnemy SpecialAbilityScreech
UnpackTime = 0
PreparationTime = 1
PackTime = 0
OpacityTarget = 1
AwardXPForTriggering = 0
IgnoreFacingCheck = Yes
End
En adaptant les modules, tu fais la même chose avec d’autres créatures ou héros .
- Maintenant, tu changes le nom de la ligne "commandset=" de tout les objects de ton code.
Pour l’exemple, je vais mettre:
CommandSet = MorgothCommandSet
CommandSet = MorgothBalrogCommandSet
CommandSet = MorgothSauronCommandSet
CommandSet = MorgothWolfCommandSet
2- Dans commandset.ini, il faut faire les commandset de ton code:
CommandSet MorgothCommandSet
1 = Command_ToggleStance
2 = Command_MorgothSauronToggleMounted
3 = Command_MorgothBalrogToggleMounted
4 = Command_MorgothWolfToggleMounted
; 5 = (POUVOIR OU TRANSFORMATION DE TON CHOIX)
; 6 = (IDEM)
12 = Command_CaptureBuilding
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
End
CommandSet MorgothBalrogCommandSet
1 = Command_ToggleStance
;2 = Command_SpecialAbilityIgnite
2 = Command_SpecialAbilityFireWhip
3 = Command_SpecialAbilityBalrogScream
4 = Command_SpecialAbilityBalrogBreath
5 = Command_SpecialAbilityBalrogWings
6 = Command_MorgothDismount
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
;4 = Command_SpecialAbilityShadeChomp
End
CommandSet MorgothSauronCommandSet ;(basé sur celui des undeads
)
1 = Command_ToggleStance
;2 = Command_SauronIronHand
2 = Command_SpecialAbilityTerribleFury
3 = Command_SauronDarkness
4 = Command_Sauron_Invulnerability
5 = Command_FiresOfDoom
6 = Command_MorgothDismount
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
End
CommandSet MorgothWolfCommandSet
1 = Command_ToggleStance
2 = Command_SpecialAbilityShadeChomp
3 = Command_SpecialAbilityDarkLordsLament
4 = Command_SpecialAbilityCallPack
5 = Command_MorgothDismount
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
End
3. Dans commandbutton.ini, il faut créer les boutons:
CommandButton Command_MorgothDismount
Command = SPECIAL_POWER
SpecialPower = SpecialAbilityToggleMountedFromFellBeast
TextLabel = CONTROLBAR:TheodenMount
Options = TOGGLE_IMAGE_ON_WEAPONSET ON_GROUND_ONLY
FlagsUsedForToggle = MOUNTED
ButtonImage = HISaruman
ButtonBorderType = ACTION
CursorName = EvilAbilityObj
InvalidCursorName = GenericInvalid
DescriptLabel = CONTROLBAR:FellBeastMountTooltip
InPalantir = Yes
End
CommandButton Command_MorgothBalrogToggleMounted
Command = SPECIAL_POWER
SpecialPower = SpecialAbilityToggleMounted
TextLabel = CONTROLBAR:TheodenMount
Options = TOGGLE_IMAGE_ON_WEAPONSET ON_GROUND_ONLY
FlagsUsedForToggle = MOUNTED
ButtonImage = HIBalrog
ButtonBorderType = ACTION
DescriptLabel = CONTROLBAR:GenericMountTooltip
InPalantir = Yes
End
CommandButton Command_MorgothSauronToggleMounted
Command = SPECIAL_POWER
SpecialPower = SpecialAbilityToggleMountedSauron
TextLabel = CONTROLBAR:TheodenMount
Options = TOGGLE_IMAGE_ON_WEAPONSET ON_GROUND_ONLY
FlagsUsedForToggle = MOUNTED
ButtonImage = HISauron
ButtonBorderType = ACTION
DescriptLabel = CONTROLBAR:GenericMountTooltip
InPalantir = Yes
End
CommandButton Command_MorgothWolfToggleMounted
Command = SPECIAL_POWER
SpecialPower = SpecialAbilityToggleMountedLoup
TextLabel = CONTROLBAR:TheodenMount
Options = TOGGLE_IMAGE_ON_WEAPONSET ON_GROUND_ONLY
FlagsUsedForToggle = MOUNTED
ButtonImage = HIWerewolf
ButtonBorderType = ACTION
DescriptLabel = CONTROLBAR:GenericMountTooltip
InPalantir = Yes
End
(observe ce qui diffère)
4. Dans specialpower.ini il y a:
SpecialPower SpecialAbilityToggleMounted
Enum = SPECIAL_TOGGLE_MOUNTED
ReloadTime = 1000
End
- Il faut ajouter ceux des modules de transformation et des boutons, ce qui donne:
;------------------------------------------------------------------------------
SpecialPower SpecialAbilityToggleMountedSauron
Enum = SPECIAL_TOGGLE_MOUNTED
ReloadTime = 1000
End
;------------------------------------------------------------------------------
SpecialPower SpecialAbilityToggleMountedLoup
Enum = SPECIAL_TOGGLE_MOUNTED
ReloadTime = 1000
End
- Pour finir, tu ajoutes Morgoth dans le playertemplate.
Voilà c’est pas plus compliqué.
Quand tu auras réussi, je t’expliquerai pour les bâtiments.
Pour construire l’antre des spectres c’est:
Command_ConstructBarrowWightLair
Pour le foyer des nains, c'est bon.
Modifier le coût? ça tu sais faire...
La zone d'effet des soins, c'est la ligne: EffectRadius