begin process at 2008 07 20 13:45:42
1 213 234 membres
151 nouveaux aujourd'hui
14 166 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : un conseil pour un debutant [ Archives / Divers ] (remus38)

un conseil pour un debutant le 09/12/2004 13:47:34

remus38
Bonjour,
voila je us en train de faire mon premier jeu et j'ai quelque problemes. Le jeu est simple : on dirige un tank vu de dessus, des ennemis arrive et avec le tank on les detruits.
Problèmes :
1- Quand je tire avec le tank et que je maintiens le bouton de tir et que je bouge le tank, le missile bouge aussi. J'ai utilisé un MovieClip que je lance quand je tire. Dois-je faire comme ça ou non.
2- une fois que vous m'aurez aidé à résoudre ce problème, comment je dois faire pour pouvoir tirer plusieurs coups à la suite.
3- Pour en revenir à la question 1, je pense que je n'utilise pas la bonne methode car je ne vois pas coment arreter la course du missile apres la destruction d'un ennemi.

Merci

Re : un conseil pour un debutant le 09/12/2004 14:07:03

John_Doe_88
1-Il faudrait voir le code qui gere le deplacement du mc, mais le deplacement du missile ne doit pas dépendre de celui du char !
2-il faut dupliquer ce clip en AS, fonction attachmovie
3-regarde la doc de la fonction hitTest pour detecter les collisions et aussi unloadmovie pour supprimer un clip de la scene.

Re : un conseil pour un debutant le 09/12/2004 15:39:22

remus38
J'ai utilisé un clip ou le tout droit
En action j'ai :
onclipevent(enterframe){
if key = espace
positionner le missile au niveau du tank
lancer le clip : _root.missile.play()

Re : un conseil pour un debutant le 09/12/2004 15:55:24

John_Doe_88
Mets du vrai code stp ca c illisible.

Re : un conseil pour un debutant le 09/12/2004 19:32:13

remus38
voila le script du tank :
onClipEvent (load) {
_root.tir.stop();
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.LEFT)) {
_x = _x-5;
}
if (Key.isDown(Key.RIGHT)) {
_x = _x+5;
}
if (Key.isDown(Key.UP)) {
_y = _y-5;
}
if (Key.isDown(Key.DOWN)) {
_y = _y+5;
}
if (Key.isDown(Key.SPACE)) {
_root.tir._x = this._x;
_root.tir._y = this._y;
_root.tir.play();
}
}

Re : un conseil pour un debutant le 10/12/2004 09:55:08

John_Doe_88
Ok. Alors le code du déplacement du missile stp.. Comment le missile bouge ?
Deja quelques commentaires :

1/ je vois pas comment tu peux gerer le déplacement du missile sans avoir une variable ou tu mets sa direction (c'est pour ça que j'aimerais bien voir comment tu gères le déplacement, je pense que ça vient de la)

2/remplace ton onClipEvent(enterFrame) par onClipEvent(keyDown), ça sera plus efficace

3/si tu veux pouvoir lancer plusieurs missiles il faut mettre ce code
if (Key.isDown(Key.SPACE)) {
_root.attachmovie("tir", "tir"+nbmissiles, nbmissiles);
_root["tir"+nbmissiles]._x = this._x;
_root["tir"+nbmissiles]._y = this._y;
_root["tir"+nbmissiles].play();
}
en considerant nbmissiles une variable comptant le nombre de missiles affichés

@+

Re : un conseil pour un debutant le 10/12/2004 10:46:29

remus38
Ben en fait pour le deplacement du missile j'ai simplement créé une animation où le missile par verticalement
Si tu veux mieux comprendre ce que j'ai fait je peux t'envoyer mon fichier

Re : un conseil pour un debutant le 10/12/2004 11:25:48

John_Doe_88
Ok. Alors c normal que le missile bouge aussi parce que ton code :
if (Key.isDown(Key.SPACE)) {
_root.tir._x = this._x; //a chaque fois que tu appuies sur espace le missile prend la coordonnée x du tank
_root.tir._y = this._y;
_root.tir.play();
}
Avec un seul missile il faudrait que tu sache si il est lancé ou pas pour éventuellement empêcher de le replacer. Mais autant directement passer à plusieurs missiles, tu n'auras plus ce probleme.
Apres c comme tu veux : soit tu m'envoie ton code et je te le fais pour plusieurs missiles (mais bon tu n'auras pas fait grand chose, ce qui n'est pas top pour toi), soit si tu es motivé et tu essaies tout seul et je veux bien t'aider (je pense t'avoir donné les éléments pour commencer).
Il faut mettre un code du style ca sur ton missile :
onClipEvent(enterFrame) {
this._y--;
if (this._x < 0) { //le missile sort de la scene
this.unloadMovie(); //destruction du clip
}
else if (this.hitTest(enemy._x, enemy._y)) { //rencontre u ennemi
this.unloadMovie(); //destruction du missile et de l'ennemi
_root.enemy.unloadMovie();
}
}
Enfin j'essaie de donner des éléments, mais c dur de détailler tout comment tu fais comme ça par message.
Mais franchement essaie c pas difficile et je me tiens à ta disposition.
@+

Re : un conseil pour un debutant le 10/12/2004 11:35:17

remus38
Je vais essayer tout seul mais je vais quand meme t'envoyer mon fichier au cas ou. Comme ca tu pourras mieux voir ce que j'ai fais et tu pourras mieux m'expliquer en cas de problème.
Merci

Re : un conseil pour un debutant le 10/12/2004 17:20:47

remus38
en fait j'ai pas compris comment on doir faire pour que le tir soit independant
et ni comment en tirer plusieurs ( nbmissiles je ne vois pas à quoi il sert)


[Page 1 Page 2]
Classé sous : jeu, debutant, tire, conseil, tank

Participer à cet échange

Pub



Appels d'offres

Dessins techniques
Budget : 60€
Animation Flash - Doma...
Budget : 370€
Application flash medi...
Budget : 1 000€

Snippets en rapport

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS