GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: ShaDowxx™ le 08 Décembre 2010, 15:46:45

Titre: Créer un DM
Posté par: ShaDowxx™ le 08 Décembre 2010, 15:46:45
Bonjour, je voudrais savoir comment on fais un DM ? Avec plusieurs respawn ? S'il vous plaît, vous pouvez me le dire ? ;)
Titre: Re : Créer un DM
Posté par: Jcvag44800 le 08 Décembre 2010, 15:52:10
C'est un peu vaste comme question   :angelnot
C'est à toi de voir comme tu feras ton DM  :P
Enfin c'est se que je pense
Titre: Re : Créer un DM
Posté par: ShaDowxx™ le 08 Décembre 2010, 15:56:15
Bah je veut juste savoir comment faire des DM
Titre: Re : Créer un DM
Posté par: Boomerkuigi le 08 Décembre 2010, 15:58:02
C'est encore vaste la ,
Titre: Re : Créer un DM
Posté par: Karting06 le 08 Décembre 2010, 16:09:33
Je crois qu'il veut comprendre le fonctionnement. Donc quand il meurt il doit respawn dans le dm quoi!
Titre: Re : Créer un DM
Posté par: ShaDowxx™ le 08 Décembre 2010, 16:10:05
Bon alors :

Je voudrais créer un DM dans l'area 51 et je veut savoir comment configurer les armes et respawn.
J'espère que c'est moin vaste.
Titre: Re : Créer un DM
Posté par: Xolokos le 08 Décembre 2010, 16:28:04
Un DM ou un TDM déjà si c'est un DM c'est tout simple tu utilise la fonction,

AddPlayerClass(0,-1386.9846,498.4605,21.2500,48.2190,0,0,0,0,0,0); //
et tu le met dans le
public OnGameModeInit()
Pour les Axe X,Y,Z vas dans le Debug de GTA SA:MP (dans ton répertoire GTA SA) et launch debug une fois ouvert tu fait le /v [ID du véhicule] pour te déplacer plus vite et tu vas à l'endroit du ou que tu veux ton mec Spawn sort du véhicule...
Tu te place et tu utilise /save et il a écrit OnFoot Position Saved la tu continue temps que tu veux avec le nombre de Spawn que tu veux sans oublier de te placer ou tu veux qu'il Spawn...
Pour finir tu vas dans t'es dossier "Document de *******" > "GTA SA User file" > "SA:MP" > "savedpositions.txd" tu l'ouvre et la tu a des truc du genre,

AddPlayerClass(0,261.5969,1973.9045,17.6406,95.0389,0,0,0,0,0,0); //
AddPlayerClass(0,264.1166,1999.3748,17.6406,89.1298,0,0,0,0,0,0); //
AddPlayerClass(0,265.8753,2009.3610,17.6406,90.6965,0,0,0,0,0,0); //
AddPlayerClass(0,-1384.4307,493.6801,24.4178,93.1972,0,0,0,0,0,0); //
AddPlayerClass(0,339.5781,2029.4139,22.6406,80.6129,0,0,0,0,0,0); //
AddPlayerClass(0,-1348.0270,491.1057,18.2344,2.0136,0,0,0,0,0,0); //
AddPlayerClass(0,-1386.9846,498.4605,21.2500,48.2190,0,0,0,0,0,0); //

Tu n'a plus qu'a C/C ce qu'il y a dans ton fichier et a changer ID du Skin (regarde plus haut) et les armes...
Tu le met dans le
public OnGameModeInit()
Exemple pour les chiffre entre les virgules...
AddPlayerClass(287,265.8753,2009.3610,17.6406,90.6965,4,0,24,5007,29,5030);287 mon personnage Spawn avec le Skin 287. (Militaire)
265.8753,2009.3610,17.6406,90.6965 Il Spawn a la position 265.8753,2009.3610,17.6406,90.69654 Avec l'arme ID 4 (Couteaux) le 0 c'est a dire pas de munition (Logique c'est un couteau)
24 Avec aussi l'arme ID 24 qui est un Desert Eagle et 5007 munition (5007 car il y a 7 munition dans le chargeur donc cela nous fait 5000-7)
29 Avec aussi l'arme ID 29 qui est un MP5...
Voilà tout est dit pour les TDM il faut demander a une autre personne ou chercher...

Titre: Re : Re : Créer un DM
Posté par: Boomerkuigi le 08 Décembre 2010, 16:28:52
Bon alors :

Je voudrais créer un DM dans l'area 51 et je veut savoir comment configurer les armes et respawn.
J'espère que c'est moin vaste.

GivePlayerWeapon()
SetPlayerPos()
OnPlayerDeath()
...
Titre: Re : Créer un DM
Posté par: ShaDowxx™ le 08 Décembre 2010, 16:38:03
Vous savez, je veut juste créer des dm pour mon gamemode et faire plusieurs respawn différent je ne vois pas se que le tuto de base viens faire là.
Titre: Re : Créer un DM
Posté par: Xolokos le 08 Décembre 2010, 16:41:58
Car le
AddPlayerClass(287,265.8753,2009.3610,17.6406,90.6965,4,0,24,5007,29,5030);et nécessaire pour créer un DM...
Et on vas pas te donne le Code tout fait, le but c'est que tu apprenne des choses.
Et tu a juste a rajouter unRandom pour que ce ne sois pas le même Spawn a chaque mort...
Titre: Re : Créer un DM
Posté par: ShaDowxx™ le 08 Décembre 2010, 16:51:14
Euh je ferais quoi du code AddPlayerClass surtout que comme c'est en commande j'ai pas besoins de ça, enfin Random(X,Y,Z) non ? et après GivePlayerWeapon non ?
Titre: Re : Créer un DM
Posté par: Gilux le 08 Décembre 2010, 16:55:24
Tu dois utiliser une variable globale avec un tableau :

Genre :

new IsInDM[MAX_PLAYERS];


Dans OnPlayerSpawn tu n'as qu'a faire :

if(IsInDM[playerid] == 1)
{
     SetPlayerPos(............); // Position du DM
}


Dans ta commande /dmjoin (je sais pas si c'est ça ^^) n'oublie surtout pas de passer la variable du joueur à 1 :
IsInDM[playerid] = 1;

Et dans /dmq, passe la à 0 :
IsInDM[playerid] = 0;


Regarde le LSDM de Cristab pour les spawns aléatoires, il y a un très bel exemple dedans ;)

++
Titre: Re : Créer un DM
Posté par: Xolokos le 08 Décembre 2010, 17:04:58
A faire une commande pour DM !
J'avais pas comprit ta question donc à la base...
Titre: Re : Créer un DM
Posté par: ShaDowxx™ le 08 Décembre 2010, 17:47:44
J'ai pris le DM de cristab, je n'ai rien à dire c'est génial !
Titre: Re : Créer un DM
Posté par: Xartrick le 08 Décembre 2010, 20:05:00
C'est stupide de prendre le code d'un autre avant même de comprendre le fonctionnement.
Je sais déjà se que certains vont me répondre mais c'est pour lui.
Toute personne comprendra mieux si elle commence à chercher réellement son problème.
Si tu aurait un minimum réfléchie (sans même aller sur internet), tu aurait trouver la solution à ta deuxième question.

Création d'un tableau contenant toutes les positons pour le DM.


new Float:Spawn[5][4] =
{
{0000.0000, 0000.0000, 0000.0000, 0000.0000},
{1111.1111, 1111.1111, 1111.1111, 1111.1111},
{2222.2222, 2222.2222, 2222.2222, 2222.2222},
{3333.3333, 3333.3333, 3333.3333, 3333.3333},
{4444.4444, 4444.4444, 4444.4444, 4444.4444}
};

Un simple random suffit pour choisir une position (au hasard).

new Position = random(sizeof(Spawn));

SetPlayerPos(playerid, Spawn[position][0], Spawn[position][1], Spawn[position][2]);
SetPlayerFacingAngle(playerid, Spawn[position][3]);
SetCameraBehindPlayer(playerid);

Et voilà, ton code pour avoir plusieurs points de renaissance est prêt.
Titre: Re : Créer un DM
Posté par: ShaDowxx™ le 09 Décembre 2010, 08:08:44
:bangin j'ai pas chercher plus loin que le bout de mon nez :D

Sinon, au niveau du tableau, si j'en rajoute encore un ou cinq, sa n'aura aucun effet néfaste ?
Titre: Re : Créer un DM
Posté par: Xartrick le 09 Décembre 2010, 19:09:31
Il faudra donc augmenter la taille du tableau !
Titre: Re : Créer un DM
Posté par: ShaDowxx™ le 10 Décembre 2010, 13:08:23
Merci, l'idée du tableau va mettre utile pour mon prochain GM :)