Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
atchalak1 Ptit Nouveau
Inscrit le: 29 Avr 2017 Messages: 2 Sujets: 1
|
Posté le: 29/04/17 17:38 Sujet du message: Déplacement quand chargé |
|
|
Bonjour tout le monde !
Je galère un peu sur une nouvelle map : je voudrais faire un tank qui ne puisse se déplacer que quand une unité est à l'intérieur (un peu sur le modèle des antres des orcs qui ne tirent que quand un peon est dedans). J'ai déjà fait les capacités de chargement du tank et l'unité qui correspond, mais la fonction :
Gui: | Trigger: Unit - Set (Last created unit) movement speed to 220.00 |
Ne change pas la vitesse de déplacement de mon tank (qui est de 0 initialement)
J'aurai également besoin d'une condition/événement qui me permette de déterminer quand le tank est vide.
Toute aide est la bienvenue !
D'avance, merci ! _________________
|
|
Revenir en haut |
|
|
Kaoss Membre reconnu
Inscrit le: 25 Fév 2014 Messages: 1175 Sujets: 167 Spécialité en worldedit: La simplicité
|
Posté le: 29/04/17 18:59 Sujet du message: |
|
|
Bon, ok, vaut mieux tout remettre à plat.
Ce serait, à mon avis, plus simple d'agir et réfléchir de la sorte :
Quand le tank doit-il pouvoir bouger ? Quand il y a qqun dedans.
Comment détecter que qqun rentre ? Le tank utilise la compétence "Charger" -> un événement existe : "unit use ability", + condition "ability cast = charger", un truc comme ça.
Comment arreter le tank quand il est vide ? Le tank utilise "décharger" -> même schéma.
-> tu as tes events et conditions.
Comment faire démarrer la tank ? J'aurais pensé à simplement remplacer le tank par une autre unité pouvant elle se déplacer : "replace casting unit by tankmobile" (casting unit est l'unité lançant la compétence citée précédemment).
Après, tu peux te débrouiller pour sauvegarder les données du tanks (pv, etc) dans des variables à déploiement.
Demdandes si tu n'as pas compris.
(sinon, je ne comprends point, tu as mis "last created unit" dans ton action : pourquoi ? Ce serait plutot "casting unit" pour "unité lançant la compétence , non ?) _________________
|
|
Revenir en haut |
|
|
Toc@rd Membre actif
Inscrit le: 14 Avr 2009 Messages: 175 Sujets: 17 Spécialité en worldedit: Décors
|
Posté le: 29/04/17 19:09 Sujet du message: |
|
|
Salut, j'ai pas testé mais avec ça :
... ça devrait marcher. Si La vitesse ne change pas, ça peut venir de ton éditeur d'objet : Règle bien les trois champs que sont vitesse de base, minimum et maximum.
Sinon, pour faire démarrer le tank tu peux créer des compétences perso sur la base de enraciner / déraciner des bâtiments elfes de la nuit, puis add ability / order to cast ability, remove ability. Ou jouer avec un changement de propriétaire depuis neutre passif.
EDIT : Avec la compétence charger / décharger de Kaoss c'est même mieux. _________________
|
|
Revenir en haut |
|
|
atchalak1 Ptit Nouveau
Inscrit le: 29 Avr 2017 Messages: 2 Sujets: 1
|
Posté le: 29/04/17 19:33 Sujet du message: |
|
|
Merci pour vos réponses !
Le problème de la détection des compétences c'est que ca marche quand une unité rentre, mais c'est pas détecté quand le 'unload' est utilisé.
Et le coup du replace c'est ce que j'avais tenté, mais à ce moment, l'ingénieur (unité qui peu piloter le tank) se retrouve à l'extérieur du tank, et on se retrouve donc avec un tank mobile d'un coté et un ingé de l'autre...
Sinon, l'unité est neutre passive de base. Le principe c'est qu'avec le bon timing on peut voler les tanks de l'ennemi .
Et après, effectivement avec des variables c'est pas trop compliqué, sauf que j'aurai pas qu'un tank mais un nombre indéterminé, et là ça commence à poser problème vite :s.
En fait le plus simple c'est pour détecter la montée dans le tank, il y a cet event :
Gui: | Trigger: Unit - A unit Is loaded into a transport |
Malheureusement, il n'y a pas l'événement inverse...
Je vais continuer à essayer de faire marcher le set movement speed et je trouverai une solution pour l'unload plus tard je pense
EDIT : j'ai bien set les les minimum, base et maximum movement speed du tank. Je met le déclencheur ici :
_________________
|
|
Revenir en haut |
|
|
Kaoss Membre reconnu
Inscrit le: 25 Fév 2014 Messages: 1175 Sujets: 167 Spécialité en worldedit: La simplicité
|
Posté le: 30/04/17 09:08 Sujet du message: |
|
|
Citation: | "En fait le plus simple c'est pour détecter la montée dans le tank, il y a cet event :
Gui:
Trigger:
Unit - A unit Is loaded into a transport
Malheureusement, il n'y a pas l'événement inverse... " |
Mais je t'ai dit que pour l'event inverse, il suffisait d'utiliser la compétence décharger ! _________________
|
|
Revenir en haut |
|
|
DarK™ Membre actif
Inscrit le: 29 Aoû 2011 Messages: 197 Sujets: 15 Spécialité en worldedit: Système/Déclencheurs [GUI]
|
Posté le: 01/05/17 18:23 Sujet du message: |
|
|
Petit détail à confirmer, quand on clique sur les portraits des unités chargées dans une unité, je crois que la compétence décharger n'est pas appelée.. Pas certain cependant, ce sont de vieux souvenirs.. _________________
|
|
Revenir en haut |
|
|
Chaosium Floodeur prématuré
Inscrit le: 31 Aoû 2007 Messages: 606 Sujets: 12 Spécialité en worldedit: Enchanteur des enchantements.
|
Posté le: 02/05/17 19:17 Sujet du message: |
|
|
À mon avis t'auras plus vite fait de créer des compétences Charger et Décharger personnalisées en te basant sur Canaliser, puis de tout paramétrer via déclencheurs.
Ensuite tu détectes quand l'unité utilise ta compétence et tu fais un Hide Unit. Pour le déchargement, tu donnes la compétence au char, et tu la fais réapparaître près du char avec Unhide.
Le seul truc à gérer ça sera le déploiement de la variable pour pouvoir récupérer l'unité qui lance la compétence, mais y'a rien de bien méchant. _________________
|
|
Revenir en haut |
|
|
|