Quant aux propositions de mod, tu peux les poster sur mon topic (du mod), pour que tout le monde voie et opine (je veux dire que au lieu de maintenir une conversation à part, que ceux qui veulent en profitent.). Malheureusement, à moins que cdd m'explique comment faire ce que t'as dis, je n'ai vraiment aucune idée
Si c'est posssible, l'idée est bonne, et je m'efforcerai à l'accomplir.
Donc, quant aux commandset et commandbutton, voilà (c'est très long, mais je te conseille de le suivre, c'est facile, et t'aura tout compris à la fin) :
-
C'est la liste de boutons visibles (ou non visibles, aussi) sur le palantir d'un personnage (sauf si c'est le constructeur, dans ce cas c'est a droite et non dans le palantir); je me suis mal exprimé: l'ensemble des boutons utilisables par un personnage (même si les pouv. passifs, ça rentre pas trop dans le definition, mais si un héros a un pouvoir passif, en fait, t'as pas besoin de lui en mettre le bouton, celui-ci ne servant qu'à informer.
Bref, ils sont du type:
- Code:
-
Commandset Nomducommandset
1 = Commande1 (s'il s'agit de soldats, c'est commandtoggleconsole)
2 = Commande2
...(etc.)
End
Exemple:
- Code:
-
CommandSet GenericCommandSet
1 = Command_ToggleStance
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
End
Ce sont les commades que doivent avoir au minimum les unités (les non batiments). De 7 en avant ce n'est pas visible (c'est logique au bout de 6 boutons, y a plus la place pour le 7º
), sauf pour les constructeurs, au bout de 12 ou 13 (ce n'est plus le palantir c'est le truc à droite, permettant 12 boutons).
L'ordre ds lequel tu les place ça n'a pas d'importance, ce sont le nbres devant qui comptent (du moment que ta premiere ligne commandset nomducommandset et la dernier end soient toujours en ces positions).
S'il s'agit de bâtiments, tu peux en mettre tant qu'on veut, vu que c'est un cercle qui se degage, lorsque tu selectionne.
Exemple: (tiré de la carte de cdd cats and mice):
Donc, voilà le commandset de la fissure (vu que c'est ce que tu veux, pour la trouver, tu fais rechercher "fissurecommandset")
- Code:
-
CommandSet GoblinFissureCommandSet
1 = Command_ConstructWildMarauderHorde
2 = Command_ConstructGoblinTroll
3 = Command_ConstructWildMarauderSwordHorde
4 = Command_ConstructWildMountainGiant
5 = Command_ConstructWildBabyDrakeHorde
7 = Command_UpgradeWildFissureLevel2
6 = Command_Sell
End
Tu retrouves commandset goblinfissurecommandset (le nom), puis de commandes de constructions de scouades (command_sell etant celle qui fait que tu "supprimes" ton edifice) et un end.
Mais quels sont les noms des "actions", "commandes", boutons, que je veux faire??
Et bin, c'est alors qu'entre le commandbutton (
ils sont tres reliés entre eux), vu que j'ai fini avec le commandset.
-
Le commandButton, ce n'est que la definition, les carctéristiques d'un bouton, une commande, que tu expliques au jeu.
C'est la que tu retrouves le nom de la commande presente dans le commandset.
Puis tu définies la commande en soi(le pouvoir que ça fait, l'upgrade que ça débloque, la scouade que ça fait,etc.); lenom visible dans le jeu, un texte expliquatif, l'image, et da'utres trucs optionnels.
Exemple, avec les trolls des goblins de la fissure ci-dessus, cad, la commande command_constructgoblintroll.
- Code:
-
CommandButton Command_ConstructGoblinTroll
Command = UNIT_BUILD
Object = GoblinCaveTroll
Options = CANCELABLE NEED_UPGRADE
TextLabel = CONTROLBAR:ConstructGoblinCaveTroll
ButtonImage = BWFissure_CaveTroll
ButtonBorderType = BUILD
DescriptLabel = CONTROLBAR:ToolTipBuildGoblinCaveTroll
NeededUpgrade = Upgrade_WildFissureLevel2
Radial = Yes
InPalantir = Yes
ShowProductionCount = Yes
End
On retrouve le nom dans l'ini command_constructgoblintroll (devant un commandbutton, et finissant avec un end, comme ds le commandset)
Puis le type de commande (pouvoir, upgrade, construction de bâtiment, d'unité).
S'il s'agit de construire un bâtiment ou une unité, y a la ligne Object après .
C'est là que tu mets la scouade ou unité (ou edifice) que tu veux faire. Ici, c'est l'objet goblincavetroll, modifiable dans object\evilfaction\units\wild\cavetroll.ini
Puis les options, tu laisse le cancelable s'il s'agit de construire une unité. tu rajoutes à coté need_upgrade, si on a besoin d'une amelioration pour la faire (comme un batiment niveau 2).
Dans ce cas, il faut spécifier l'upgrade requise après:(pas forcement tout juste apres, mais dans le meme commandbutton). ici, 5 lignes après:
Neededupgrade = puis tu mets le nom de l'upgrade.
Textlabel, c'est le nom de la commande dans le jeu (comme "troll des cavernes"). DescriptLabel, c'est la description qui va avec (comme "recrute un puissant troll des cavernes. Requis fissure niveau 2").
Le bouton bordertype sais pas trop, laisse build s'il s'agit de construire (ou faire une scouade, c'est pareil).
BoutonImage, c'est l'image que tu verras avec le bouton 8comme la tête d'un troll)
Et les trois dernières, tu laisse comme ça
En réalité, pour faire son propre commandbutton, il s'agit de partir d'un du même type, et de modifier les ligne qui t'interessent (object; buttonimage; textlabel; descriptlabel; et eventuellement les upgrades).Par exemple, j'ai crée un objet appelé Trollkiller (dans l'ini). Je veux faire un bouton qui le fasse.
Je veux que le bouton soit nommé "Guerriers goblins", que sa description soit "recrute des soldats du gondor" et que son image soit celle d'un géant des montagnes:
Je cherche les trucs concernés:
-"guerriers goblins" se dit CONTROLBAR:ConstructGoblinFighterHorde (apres le text label de la commande command_constructgoblinfighterhorde)
-"recrute des soldats du gondor" se dit dans l'ini: CONTROLBAR:ToolTipBuildGondorFighterHorde (apres le descriptlabel de la commande command_constructgondorfighterhorde)
-l'image des geants des montagnes est designée par BWFissure_Giant (apres le buttonimage de command_constructwildmountaingiant)
Je pars sur le texte de construction des goblins et je remplace : -son "Object" original (GoblinFighterHorde), par TrollKiller (l'unité que je veux faire
-son textlabel original par CONTROLBAR_ConstructGoblinFighterHorde (qui ici, est le même
)
-son descriptlabel par CONTROLBAR:ToolTipBuildingGondorFighterHorde
-son ButtonImage par BWFissure_Giant.
Et je veux qu'on ne puisse le faire qu'au niveau 2:
Je rajoute NEED_UPGRADE apres CANCELABLE (ds options) et une ligne: neededUpgrade = (l'upgrade
) Upgrade_WildFissureLevel2
Et bien sûr, pour qu'il n'y ait pas de game crash, il faut changer le nom de la commande (remplacer Command_ConstructGoblinFighterHorde) par, par exemple, ImladrisProduction
Ce qui donnerait, en partant de
- Spoiler:
CommandButton Command_ConstructGoblinFighterHorde
Command = UNIT_BUILD
Object = GoblinFighterHorde
Options = CANCELABLE
TextLabel = CONTROLBAR:ConstructGoblinFighterHorde
ButtonImage = BWCave_GoblinWarrior
ButtonBorderType = BUILD
DescriptLabel = CONTROLBAR:ToolTipBuildGoblinFighterHorde
Radial = Yes
InPalantir = Yes
ShowProductionCount = Yes
End
ça:
- Spoiler:
CommandButton ImladrisProduction
Command = UNIT_BUILD
Object = Trollkiller
Options = CANCELABLE NEED_UPGRADE
NeedeUpgrade = Upgrade_WildFissureLevel2
TextLabel = CONTROLBAR:ConstructGoblinFighterHorde
ButtonImage = BWFissure_Giant
ButtonBorderType = BUILD
DescriptLabel = CONTROLBAR:ToolTipBuildGondorFighterHorde
Radial = Yes
InPalantir = Yes
ShowProductionCount = Yes
End
Rappel: Notre commande se nomme "ImladrisProduction"
Et revenant au CommandSet pour comprendre comment ça marche, finalement: On rajoute au commandset goblinfissurecommandset, une ligne contenant la commande "Imladris Production" après le nbre et un "="
Exemple:
- Spoiler:
CommandSet GoblinFissureCommandSet
1 = Command_ConstructWildMarauderHorde
2 = Command_ConstructGoblinTroll
3 = Command_ConstructWildMarauderSwordHorde
4 = Command_ConstructWildMountainGiant
5 = Command_ConstructWildBabyDrakeHorde
7 = Command_UpgradeWildFissureLevel2
6 = Command_Sell
8 = ImladrisProduction
End
(Remarque en bleu la commande nº 7 qui est placée avnt la nº 6, mais tout dans le end).
En rouge, ma commande, dans la 8º place (les 7 autres etaient prises
) toujours avnat le end, dans le commandset de la fissure des goblins.
Si tu veux vérifier mes codes, tu verras qu'ils marcheront, du moment que l'object que t'as mis qui se fasse exicte (ici non, vu que l'objet trollkiller n'existe pas
)
Bon, eh bin pour ceux qui auront eu le courage de lire tout ça sans s'endormir
ou la sauter
, BRAVO
J'ai fait d'un truc simple, un tuto très long (comme toujours), mais comme ça vous comprenz bien d'un coup.
J'espère que ça t'aidera Istari, ou tout autre intéressé
Je te commente mon mod sur mon topic