Dragon's fury(fallait pas l'énerver!):MAJ6 chgt de planches

Programmation avancée de jeux en PureBasic
Avatar de l’utilisateur
Huitbit
Messages : 940
Inscription : jeu. 08/déc./2005 5:19
Localisation : Guadeloupe

MAJ5 dragon à vapeur + légère amélioration du design+bugs

Message par Huitbit »

Image

Pour tuer le dragon:
-une boule de feu dans la tête
-une boule ying-yang du même type que celle qui l'a fait apparaître(là c'est la loterie :lol: )!

Il y a deux bugs que je n'arrive pas à reproduire:

-Le premier c'est avec l'index de repérage des coordonnées dans les pokeb : fer_position_sauvegarde (voir procedure "pathfinding")
Normalement, cet index dépasse rarement 100 (il est lié à la longueur du chemin trouvé par le pathfinding et remis à 0 à chaque appel du pathfinding).
Il arrive(très rarement chez moi) qu'il fasse un bond à plus de 1000!
Ca arrivait quand la structure "liste" de la carte était mal mise à jour (oublie de préciser qu'une roche à disparue, apparition d'un objet pile sur la tête du dragon de fer au moment du pathfinding...)
Pour l'apparition des boules, je n'ai pas mis de conditions sur la tête du dragon vert (je la rajouterai, c'est peut-être ça qui cloche :roll: !).

Au cas où ça arriverait, je fais disparaître le dragon de fer(j'ai pas trouvé mieux)

Code : Tout sélectionner

If fer_position_sauvegarde>200 
          animation_dragon_fer=0 
          dragon_fer_action=0 
            Break 
          EndIf 
(200 c'est largement suffisant même si le chemin peut faire 1000 cases)

-le deuxième, dans des conditions extrêmes (tableau plein de roches(90%, en trichant bien sûr), faibles délais...) il arrive que le dragon de fer "explose"(comme si les informations laissées par la tête au reste du corps étaient perdues!).
A vitesse normale ça à l'air d'aller. Avec vos pc avec des FPS de 300 est-ce que ça va toujours?

Merci d'avance...

Hasta la vista!
Dernière modification par Huitbit le ven. 24/août/2007 16:28, modifié 1 fois.
Anonyme

Message par Anonyme »

Image

:D
Avatar de l’utilisateur
Huitbit
Messages : 940
Inscription : jeu. 08/déc./2005 5:19
Localisation : Guadeloupe

Message par Huitbit »

@Cpl.Bator
Excelllent! :P
on se croirait dans une mine de charbon!
Faudra que je rajoute l'option "changer de sprites"

A part ça, de temps en temps, la fonction tir est défaillante (delai anormal avant d'avoir le tir), si je ne trouve pas, je mettrai le tir avec la barre
d'espacement!

Hasta la vista!

[EDIT] j'ai rajouté "date_du_tir=ElapsedMilliseconds()" dans la macro initialisation, ça à l'air d'aller!

[EDITbis!] j'ai déplacé "date_du_tir=ElapsedMilliseconds()" dans la macro "changement_direction_clavier", donc, à chaque changement de direction la variable est rafraîchie, apparement, plus de problème.

A la base j'avais pas du tout prévu de faire un jeu..., y a-t-il des précautions à prendre quand on mélange les elapsemilliseconds() et les delay()?
Répondre