GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: [BGS]teck le 30 Mars 2008, 19:18:28

Titre: aide pour dm
Posté par: [BGS]teck le 30 Mars 2008, 19:18:28
Bonjour a tous je vien de creer un dm mes je ne trouve pas comment respawner le joueur quand il meur dans le dm pour quil soit encore respawner dans le dm et ossi fair en sotre que les joueur ne quite pas le dm en fesant une otre commandes exenple le joueur tape /mls vous ne pouvez pas aller a cette endroit veuillez taper /dm quitte pour quitter le dm merci a vous d'avence
Titre: Re : aide pour dm
Posté par: [StAfF]MaN le 30 Mars 2008, 20:08:24
Alors pour ça je peut t'aider ;) :

Pour que ton joueur ne quitte pas le DM quand il meurt :

En haut de ton script tu met ça :

new dm[MAX_PLAYERS];
Dans ta commande de DM tu met :

dm[playerid] = 1;
Dans ta commande pour quitter le dm (si t'en a une )  tu met :

dm[playerid] = 0;

Ensuite dans ton OnPlayerSpawn :

    if(dm[playerid] == 1)
    {
    SetPlayerPos(playerid, posX, posY, posZ); //de la zonne DM
    }

    if(dm[playerid] == 0)
    {
    // aucunes actions, normale le joueur n'est pas en DM
    }

Voila pour ça c'est fait ;) après pour ne pas qu'il puisse utiliser des commandes, je ne sais plus, faut que je retrouve...
Titre: Re : aide pour dm
Posté par: Franky™ le 30 Mars 2008, 21:08:15
Salut,

Alors pour que je joueur ne puisse pas quitter le DM en fesant une autre commande que /dm quitte tu fait ca.

En faut du DM:
Code: (pwn) [Sélectionner]
new DMArena[MAX_PLAYERS];
Dans public OnPlayerConnect(playerid) tu met ca:
Code: (pawn) [Sélectionner]
DMArena[playerid] = 0;
Et dans toute des commandes tu met ca:
Code: (pawn) [Sélectionner]
if(DMArena[playerid] == 1) return SendClientMessage(playerid, LIGHTRED, "Vous êtes dans l'arène,vous n'êtes pas autorisé à sortir!");
Et la sa devrais Marcher.

Voila
Cordialement
Titre: Re : aide pour dm
Posté par: [BGS]teck le 31 Mars 2008, 16:40:59
Merci a vous les gar je ves éssyer sa merci  :D :D
Titre: Re : aide pour dm
Posté par: [BGS]teck le 31 Mars 2008, 17:07:57
Bonjour désoler pour le double poste mes quand je veux quitter exenple je fait /mls sa quitte quand méme ma commandes dm ressenble a sa

if(strcmp(cmdtext, "/dm1", true) == 0)
{
dm[playerid] = 1;
PlayerPlaySound(playerid, 1137, 0, 0, 0);
GetPlayerVehicleID(playerid);
GivePlayerWeapon(playerid, 25, 99999999999);
GivePlayerWeapon(playerid, 36, 99999999999);
GivePlayerWeapon(playerid, 38, 99999999999);
SendClientMessage(playerid, COLOR_GREEN,"vous éttes ariver a /dm1");
SendClientMessage(playerid, COLOR_GREEN,"vous avait reçus un Fusil a ponpe et un minigun");
SetPlayerInterior(playerid, 0);
LinkVehicleToInterior(cartype, 0);
if(!IsPlayerInAnyVehicle(playerid))
{
SetPlayerPos(playerid,-608.4027,-543.4727,40);
SendClientMessage(playerid, COLOR_RED,"DM 1");
}
else
{
SetVehiclePos(cartype,-608.4027,-543.4727,40);
SetVehicleZAngle(cartype,186.0976);
SendClientMessage(playerid, 0xFF8000FF,"DM1");
}
return 1;
}
Titre: Re : aide pour dm
Posté par: Franky™ le 31 Mars 2008, 17:41:58
Cette commandes que tu vien de mettre c'est pour allez au DM, donc montre moi une commande de téléportation stp.

Cordialement Franky Patou
Titre: Re : aide pour dm
Posté par: [BGS]teck le 31 Mars 2008, 17:45:12
ok d'accord je poste une commandes de teleportation

if(strcmp(cmdtext, "/mlv", true) == 0)
{
PlayerPlaySound(playerid, 1137, 0, 0, 0);
GetPlayerVehicleID(playerid);
SetPlayerInterior(playerid, 0);
LinkVehicleToInterior(cartype, 0);
if(!IsPlayerInAnyVehicle(playerid))
{
SetPlayerPos(playerid,2048.7170,1510.3895,10);
SendClientMessage(playerid, 0xFF8000FF,"Bienvenue a Las Vanturas");
SendClientMessage(playerid, 0xFF8000FF,"http://bgs-samp.forumperso.fr");
if(DMArena[playerid] == 1) return SendClientMessage(playerid, COLOR_RED, "Vous êtes dans l'arène,vous n'êtes pas autorisé à sortir!");
}
else
{
SetVehiclePos(cartype,2048.7170,1510.3895,10);
SetVehicleZAngle(cartype,186.0976);
SendClientMessage(playerid, 0xFF8000FF,"Bienvenue a Las Vanturas");
SendClientMessage(playerid, 0xFF8000FF,"http://bgs-samp.forumperso.fr");
if(DMArena[playerid] == 1) return SendClientMessage(playerid, COLOR_RED, "Vous êtes dans l'arène,vous n'êtes pas autorisé à sortir!");

}
return 1;
}
Titre: Re : aide pour dm
Posté par: jonjon le 31 Mars 2008, 22:34:25
Tu a mit un : if(DMArena[playerid] == 1)  alors que ta variable c'est dm[playerid] donc il faut que tu mette ceci :

if(strcmp(cmdtext, "/mlv", true) == 0)
{
PlayerPlaySound(playerid, 1137, 0, 0, 0);
GetPlayerVehicleID(playerid);
SetPlayerInterior(playerid, 0);
LinkVehicleToInterior(cartype, 0);
if(!IsPlayerInAnyVehicle(playerid))
{
SetPlayerPos(playerid,2048.7170,1510.3895,10);
SendClientMessage(playerid, 0xFF8000FF,"Bienvenue a Las Vanturas");
SendClientMessage(playerid, 0xFF8000FF,"http://bgs-samp.forumperso.fr");
if(dm[playerid] == 1) return SendClientMessage(playerid, COLOR_RED, "Vous êtes dans l'arène,vous n'êtes pas autorisé à sortir!");
}
else
{
SetVehiclePos(cartype,2048.7170,1510.3895,10);
SetVehicleZAngle(cartype,186.0976);
SendClientMessage(playerid, 0xFF8000FF,"Bienvenue a Las Vanturas");
SendClientMessage(playerid, 0xFF8000FF,"http://bgs-samp.forumperso.fr");
if(DMArena[playerid] == 1) return SendClientMessage(playerid, COLOR_RED, "Vous êtes dans l'arène,vous n'êtes pas autorisé à sortir!");

}
return 1;
}

Cordialement, jonjon
Titre: Re : aide pour dm
Posté par: Franky™ le 31 Mars 2008, 22:40:33
Essaie comme ca:

Code: (cpp) [Sélectionner]
if(strcmp(cmdtext, "/mlv", true) == 0)
{
if(DMArena[playerid] == 1) return SendClientMessage(playerid, COLOR_RED, "Vous êtes dans l'arène,vous n'êtes pas autorisé à sortir!");
PlayerPlaySound(playerid, 1137, 0, 0, 0);
GetPlayerVehicleID(playerid);
SetPlayerInterior(playerid, 0);
LinkVehicleToInterior(cartype, 0);
if(!IsPlayerInAnyVehicle(playerid))
{
SetPlayerPos(playerid,2048.7170,1510.3895,10);
SendClientMessage(playerid, 0xFF8000FF,"Bienvenue a Las Vanturas");
SendClientMessage(playerid, 0xFF8000FF,"http://bgs-samp.forumperso.fr");
}
else
{
SetVehiclePos(cartype,2048.7170,1510.3895,10);
SetVehicleZAngle(cartype,186.0976);
SendClientMessage(playerid, 0xFF8000FF,"Bienvenue a Las Vanturas");
SendClientMessage(playerid, 0xFF8000FF,"http://bgs-samp.forumperso.fr");

}
return 1;
}code]
Titre: Re : aide pour dm
Posté par: [BGS]teck le 01 Avril 2008, 16:07:55
merci les gars sa marche et un dernier truc ossi quand je fait /dm quitte je voudrait que les arme parte j'ai fait sa mes sa ne marche pas

if(strcmp(cmdtext, "/dm quitte", true) == 0)
{
dm[playerid] = 0;
GivePlayerWeapon(playerid, 0, 0);
GivePlayerWeapon(playerid, 0, 0);
GivePlayerWeapon(playerid, 0, 0);
PlayerPlaySound(playerid, 1137, 0, 0, 0);
RemovePlayerFromVehicle (playerid);
SetTimerEx ("SpawnFunc", 2000, 0, "i", playerid);
SetPlayerColor(playerid,COLOR_LIGHTBLUE);
GetPlayerVehicleID(playerid);
SetPlayerInterior(playerid, 0);
LinkVehicleToInterior(cartype, 0);
if(!IsPlayerInAnyVehicle(playerid))
{
SetPlayerPos(playerid,1873.6475,-1400.4834,13);
}
else
{
SetVehiclePos(cartype,2048.7170,1510.3895,10);
SetVehicleZAngle(cartype,186.0976);
SendClientMessage(playerid, COLOR_YELLOW,"Vous avait quitter le dm monster");
 new name[MAX_PLAYER_NAME+1];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s A quitter le dm type /dm quitte", name);
SendClientMessageToAll(COLOR_YELLOW, string);

}
return 1;
}

sa n'enléve pas les armes voila merci de m'aider !!!!
Titre: Re : aide pour dm
Posté par: Franky™ le 01 Avril 2008, 16:12:26
Essaie sa et sa devrai etre bon.

Code: (cpp) [Sélectionner]
if(strcmp(cmdtext, "/dm quitte", true) == 0)
{
dm[playerid] = 0;
ResetPlayerWeapons(playerid);
PlayerPlaySound(playerid, 1137, 0, 0, 0);
RemovePlayerFromVehicle (playerid);
SetTimerEx ("SpawnFunc", 2000, 0, "i", playerid);
SetPlayerColor(playerid,COLOR_LIGHTBLUE);
GetPlayerVehicleID(playerid);
SetPlayerInterior(playerid, 0);
LinkVehicleToInterior(cartype, 0);
if(!IsPlayerInAnyVehicle(playerid))
{
SetPlayerPos(playerid,1873.6475,-1400.4834,13);
}
else
{
SetVehiclePos(cartype,2048.7170,1510.3895,10);
SetVehicleZAngle(cartype,186.0976);
SendClientMessage(playerid, COLOR_YELLOW,"Vous avait quitter le dm monster");
  new name[MAX_PLAYER_NAME+1];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s A quitter le dm type /dm quitte", name);
SendClientMessageToAll(COLOR_YELLOW, string);

}
return 1;
}

Il falais juste mettre sa : ResetPlayerWeapons(playerid);

Cordialement