GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: John_Montavedro le 29 Octobre 2010, 13:39:47

Titre: Enlever ou rajouter des points/etoile de recherche/argent
Posté par: John_Montavedro le 29 Octobre 2010, 13:39:47
Bonjour! Le serveur 'Guerre Civile' avance à grand pas mais il faut encore tout de même l'améliorer avant sa mise en ligne générale :)

C'est pour cela que je vais poser toutes mes questions ici afin d'éviter divers  :spam

Bien sûr je note ici tout ce que je cherche à faire, je vais trouver peut être la réponse à certaines tout seul ;)

1/ Comment mettre pour chaque team's un Create3DTextLabel

2/ Comment mettre un Create3DTextLabel sur un pickup

3/ Comment recalibrer les équipes si il y a un décalage (ex: 3 personnes dans l'équipe terroriste et 17 personnes dans l'équipe militaire)

4/ Comment rajouter 1 point à la team quand un membre de cette team tue un adversaire

5/ Comment afficher le score des 2 team's

6/ Comment remettre le score à 0 au bout de 30 minutes

7/ Comment donner un avertissement à un joueur qui tue un membre de sa team

Merci!

Titre: Re : Enlever ou rajouter des points/etoile de recherche/argent
Posté par: chneubeul le 29 Octobre 2010, 14:03:01
1/ Comment mettre pour chaque team's un Create3DTextLabel

C'est à dire ?

2/ Comment mettre un Create3DTextLabel sur un pickup

Tu le créé à la même position que le pickup ^^


3/ Comment recalibrer les équipes si il y a un décalage (ex: 3 personnes dans l'équipe terroriste et 17 personnes dans l'équipe militaire)

Déjà il te faut stocker le nombre de personne / team, donc :

new equip1 = 0;
new equip2 = 0;

puis a chaque fois qu'un joueur spawn, tu prend son équipe, puis tu incrémente pour chaque spawn...

Si le joueur est dans l'équipe 1
equip1++;

Simple, mais si tu veux checké, tu regarde si par exemple si equip1 - equip2 || equip2 - equip1  >= 2 donc si la différence est de plus  ou égal à 2 joueur, tu va venir equilibrer, donc tu va chercher tous les ids des joueurs d'une equipe et faire un random pour savoir lequel va allez dans l'autre.


4/ Comment rajouter 1 point à la team quand un membre de cette team tue un adversaire


Dans onplayerdeath tu prend killerid, et tu regarde ça team.. Puis regarde playerid ( celui qui est mort ) si il à une team différente, si c'est le cas, tu rajoute un pts.



5/ Comment afficher le score des 2 team's


Tu dois utiliser des textdraw, il y a un FS sympa qui te permet d'en créé facilement direction IG,
il s'appel textdraw editor, et se trouve sur le forum sa-mp. Utilise un GM genre lvdm pour le lancer, sinon tu auras un conflit avec les menus.


6/ Comment remettre le score à 0 au bout de 30 minutes.

Quand la partie démarre, tu met un timer qui va charger une fonction, dans laquelle tu va reload le score..  :...

7/ Comment donner un avertissement à un joueur qui tue un membre de sa team

Dans onplayerdeath, tu check si killerid, et playerid ont la même team, si c'est le cas, tu lui met un avertissement
donc par exemple
Advertissement[killerid]++;

Après ça dépend de ce que tu veux faire ^^


Voila j't'ai un peu éclairer, aprés si tu veux des explications fait dans l'ordre on te répondras..
Titre: Re : Enlever ou rajouter des points/etoile de recherche/argent
Posté par: John_Montavedro le 29 Octobre 2010, 15:20:30
La question 1/ Je demande comment attacher un text3D aux joueurs de l'équipe Militraire en indiquant sur le 3D "Militaire" et pareil pour les terroristes.

2/ J'ai fais ça, mais sa ne marche pas : Create3DTextLabel("Bar terroriste",rouge,501.980987,-69.150199,998.757812,1.0,501.980987,-69.150199,998.757812,0);
Titre: Re : Enlever ou rajouter des points/etoile de recherche/argent
Posté par: chneubeul le 29 Octobre 2010, 16:05:59
1) Utilise Attach3DTextLabel un truc comme ça, va voir sur le wiki :)

2) Tu as vu tes positions : 501.980987,-69.150199,998.757812
     Je pense que ça doit être à l'intérieur ça :D

Titre: Re : Enlever ou rajouter des points/etoile de recherche/argent
Posté par: John_Montavedro le 29 Octobre 2010, 16:25:41
2/ J'ai fais sa et marche pas :s Create3DTextLabel("Bar terroriste",rouge,363.3236,2476.9944,16.4844,1.0,363.3236,2476.9944,16.4844,0);
Titre: Re : Enlever ou rajouter des points/etoile de recherche/argent
Posté par: chneubeul le 29 Octobre 2010, 18:17:18
Create3DTextLabel("Bar terroriste",rouge,363.3236,2476.9944,16.4844,1.0,363.3236,2476.9944,16.4844,0);

text[] -> Bar terroriste"
color, -> rouge
 Float:X, -> 363.3236
 Float:Y, -> 2476.9944
 Float:Z, -16.4844
 Float:DrawDistance, -> 1.0 // trop peu :)
 virtualworld,  -> 363.3236 // Ah bon ?
testLOS -> 2476.9944 // c'est pas 0 ou 1 ?
16.4844 - > ca sert à quoi ?
0 et ça ?

Regarde de plus prés ton code, a la compil il doit t'afficher des erreurs  :... tu peut pas le dire ?

Titre: Re : Re : Enlever ou rajouter des points/etoile de recherche/argent
Posté par: John_Montavedro le 29 Octobre 2010, 18:47:07
Create3DTextLabel("Bar terroriste",rouge,363.3236,2476.9944,16.4844,1.0,363.3236,2476.9944,16.4844,0);

text[] -> Bar terroriste"
color, -> rouge
 Float:X, -> 363.3236
 Float:Y, -> 2476.9944
 Float:Z, -16.4844
 Float:DrawDistance, -> 1.0 // trop peu :)
 virtualworld,  -> 363.3236 // Ah bon ?
testLOS -> 2476.9944 // c'est pas 0 ou 1 ?
16.4844 - > ca sert à quoi ?
0 et ça ?

Regarde de plus prés ton code, a la compil il doit t'afficher des erreurs  :... tu peut pas le dire ?



xD je sais pas ce que sa veut dire tout sa moi. LOS...ect
Titre: Re : Enlever ou rajouter des points/etoile de recherche/argent
Posté par: chneubeul le 29 Octobre 2010, 22:14:38
 :... wiki est là pour t'aider