-
Bonjour, donc voila déjà le code :
http://pastebin.com/eRZayeze (http://pastebin.com/eRZayeze)
Donc ce que je veut, c'est que quand le joueur de la team humain se prend des dégâts de l'arme ID 1 (que seul les zombies ont), il sois déplacé dans la team zombie.
Mais le seul truc qui marche, c'est que ça le désarme, lui met la couleur rouge, lui met le skin, l'arme ID1 et l'unfreeze (au cas ou y'aurais un freeze avec le changement de skin)
Mais ne le met pas en team zombie, ce qui fait que quand il meurt, il réparait en team humain (avec la couleur rouge en plus..)
En gros je voudrais tout ce qu'il y a de présent, mais avec en plus le fait qu'il sois dans la team zombie quand il spawn après la mort.
Merci d'avance !
-
Dans ton OnPlayerTakeDamage et dans OnPlayerSpawn ajoute ce code et dit nous ce que la console affiche.
OnPlayerSpawn :
printf("OnPlayerSpawn : Player %d Team %d", playerid, GetPlayerTeam(playerid));
OnPlayerTakeDamage :
printf("OnPlayerTakeDamage : Player %d Team %d", playerid, GetPlayerTeam(playerid));
Il faut que ce soit le dernier bout de code appelé.
-
Good! Ça marche parfait, merci beaucoup à toi et de ta réponse rapide ;)
EDIT : Quand l'humain se fait changer de team (et donc de skin), une fois sur deux je le vois unsynchro, il glisse sur le sol quand il marche/cour, je crois que ça vient du changement de skin.
D'ou ça peut venir ?
A noté que là j'héberge le serveur sur mon PC, donc peut être que ça vient de ça.
-
Je me permet d'UP, comme je l'ai dit dans l'EDIT, quand le joueur se fait changer son skin quand il reçoit le dégat de l'arme, il devient unsynchro et glisse sur le sol quand il marche / cours.
C'est du au fait qu'il change de skin (je pense) ou que le serveur est hébergé sur mon PC?
-
Pense à respawn le joueur.
-
C'est à dire ? Le remettre au point de spawn de la team ?
Je préférerais qu'il change de team, skin etc et qu'il reste au même endroit.
Il n'y a pas une fonction pour remettre synchro le joueur, ou quelque chose du genre ?
-
new Float:X = 0.0,
Float:Y = 0.0,
Float:Z = 0.0;
GetPlayerPos(playerid, X, Y, Z);
SpawnPlayer(playerid);
SetPlayerPos(playerid, X, Y, Z);
Si tu ne veux pas le faire changer de position, fait le revenir où il était ;).
-
Good, merci beaucoup à toi, j'essaierais tout ça demain !
Double post
Ça marche nickel, merci beaucoup à toi !