Je vois, je vois... et je sais le faire, si, si, je sais.
Comment je sais ? Parce que je me suis amusé à lire tout ce qu'il y a là :
http://cs.elderscrolls.com/constwiki/index.php/Main_Page
... que j'ai ensuite traduit partiellement là :
http://wiwiki.wiwiland.net/index.php/TESCS2_:_Aide_aux_Moddeurs
En particulier là :
http://wiwiki.wiwiland.net/index.php/TESCS2_:_Types_de_script
1) Les grandes lignes de la méthode pour faire apparaître :Mettre la maison dans le monde (référence) et, dans la fenêtre REFERENCE, tu coches la case "Initialy Disabled".
Tu lui donnes pour EditorId à cette ref AAMaison1ref01 (ou ce que tu veux)
Tu as donc une maison dans le jeu qui sera invisible.
Pour rendre la maison visible, il faut mettre dans un
script d'effet que tu attribueras à ta potion la commande :
AAMaison1ref01.Enable
Et voilà. Quand tu bois la potion, la maison apparaît
- Tu écris un script d'effet : attention dans la cas en haut, il faut mettre
Type Script : Magic Effect (au lieu de Object)
sinon tu ne pourras pas le voir dans la liste des scripts d'effets pour la potion.
- Code:
-
scn MaisonVisibleSCRIPT
begin ScriptEffectStart
AAMaison1ref01.Enable
end
Tu crée une potion avec une bouteille à potion par exemple...
Tu remplis les infos.
Dans le tableau des effet (tableau Results), tu fais clic-droit, new.
Dans la fenêtre Effect Item qui viens de s'ouvrir :
* tu sélectionnes "ScriptEffect" dans la liste des effets.
* cela permet de saisir les "Script effect info" : MaisonVisibleSCRIPT dans la liste des scripts
* tu peux éventuellement ajouter un effet visuel...
Tu mets une bouteille de potion dans un coin quelque part... il restera dans le jeu à la ramasser et la boire.
2) Pour bouger la maison avec des touches clavierIl faut un script avec
OBSE (extension de script pour Oblivion) et faire un script sur la maison.
Un script sur la maison... avec une maison
activateur et non pas static (les statics n'ont pas de script).
Créer
un activateur et lui mettre le nif de la maison, et un script
d'objet... qui contiendra ce qu'il faut faire si la maison est enable et
que la touche machin est actionnée.
Pour bouger la maison avec des touches, il faut pour cela utiliser OBSE, et en particulier les fonctions de détection de touches.
Et écrire un script qui agit en conséquence : augmenter le X ou le Y... de la ref de la maison :
Exemple pour bouger :
- Code:
-
SetPos X ((GetPos X) + 100) ; la maison bouge d'environ 1 m à 1,5 m selon l'axe des X
http://wiwiki.wiwiland.net/index.php/TESCS2_:_SetPos
http://wiwiki.wiwiland.net/index.php/TESCS2_:_GetPos
Pour tester les touches :
http://cs.elderscrolls.com/constwiki/index.php/IsKeyPressed2
Cela donnerais quelque chose comme :
- Code:
-
If GetDisabled == 0 && IsKeyPressed2 == 77 ; Num 6 dans la liste des codes touches
SetPos X ((GetPos X) + 100)
EndIf
If GetDisabled == 0 && IsKeyPressed2 == 75 ; Num 4 dans la liste des codes touches
SetPos X ((GetPos X) - 100)
EndIf
If GetDisabled == 0 && IsKeyPressed2 == 72 ; Num 8 dans la liste des codes touches
SetPos Y ((GetPos Y) + 100)
EndIf
If GetDisabled == 0 && IsKeyPressed2 == 80 ; Num 2 dans la liste des codes touches
SetPos Y ((GetPos Y) - 100)
EndIf
Ajouter aussi une condition sur l'ensemble du genre Getdistance player < 4000... si le joueur est pas là, rien ne bouge.
Pour pouvoir compiler le script avec Obse et que çà fonctionne dans le jeu, il faut installer OBSE, et aussi : lancer le TESCS avec le raccourcis OBSE et lancer le jeu avec le lanceur OBSE...