Aller au contenu

Coder Sous Samp


Turkish_boy

Messages recommandés

Voila j'ai rechercher mais il n'y a pas de sujet la-dessus donc j'en crée un.

Le but de ce topic est de montrer les differentes maniere de coder sous PAWN donc pour crée un mod sous SAMP.

 

Je crois que les commandes de départ vous les connaisez (sinon demandez moi les) alors je vais poster des script bien précis :

 

Aficher un texte a l'ouverture du mod

 

 

print("\n**********************************");
print(" votre texte ici\n");
print(" votre texte ici");
print(" votre texte ici");
print("**********************************\n");

 

donc comme vous le constater remplacer le "votre texte ici" par votre texte

 

PS : vous pouvez rajouter autant de ligne que vous voulez

 

Se teleporter d'un point a un autre

 

 

if(strcmp(cmd, "/[le nom de la commande]", true) == 0) {

if (GetPlayerMoney(playerid) < [prix de deplacement])
{
SendClientMessage(playerid,COLOR_[la couleur en lettre majuscule],"[votre texte en cas de manque d'argent]");
return 1;
}
else if (IsPlayerInCheckpoint(playerid) == 0)
{
SendClientMessage(playerid, COLOR_[votre couleur en lettre majuscule], "[votre texte en cas de mal position]");
return 1;
}

else if (getCheckpointType(playerid) == CP_LS_AIR)
{
SendClientMessage(playerid, COLOR_[votre couleur en lettre majuscule], "[votre texte en cas de mal position]");
return 1;
}

else if (GetPlayerMoney(playerid) > 299 && getCheckpointType(playerid) == CP_LV_AIR && IsPlayerInCheckpoint(playerid) == 1)
{
GivePlayerMoney(playerid,-[argent retirer]);
SetPlayerPos(playerid,[X],[Y],[Z]);
SetPlayerFacingAngle(playerid,360.0);
GameTextForPlayer(playerid,"~[abreviation de la couleur]~[Votre texte ici].",2000,5);
}
else if (GetPlayerMoney(playerid) > 299 && getCheckpointType(playerid) == CP_SF_AIR && IsPlayerInCheckpoint(playerid) == 1)
{
GivePlayerMoney(playerid,-[somme retier]);
SetPlayerPos(playerid,[X],[Y],[Z]);
SetPlayerFacingAngle(playerid,360.0);
GameTextForPlayer(playerid,"~[abreviation de la couleur]~[Votre texte ici*].",2000,5);
}
return 1;
}

 

Dans ce cas il faut remplacer tout ce qui est entre [] et retirer les []

* 1 : le texte doit etre le meme que celui du dessus

PS : ce qui est des couleur : les abreviation sont :

 

w : blanc

b : bleu

y : jaune

r : rouge

g : vert

 

Mettre des couleurs a vos texte

 

il y a 2 cas :

 

1er

 

ameTextForPlayer(playerid,"~[abreviation de la couleur]~[Votre texte ici].",2000,5);

 

 

remplacer le 1er [] par une des lettre situer en ci dessus

 

2eme cas

 

 

SendClientMessage(playerid, COLOR_[votre couleur en lettre majuscule], "[votre texte ici]");

 

 

simple ici ecriver la couleur mais en ANGLAIS

 

Créer une banque dans le 24/7

 

//------------------- /banque

if(strcmp(cmd, "/banque", true) == 0 || strcmp(cmd, "/gbanque", true) == 0) {
new gang;
if(strcmp(cmd, "/gbanque", true) == 0)
gang = 1;

if(IsPlayerInCheckpoint(playerid) == 0 || getCheckpointType(playerid) != CP_BANK && getCheckpointType(playerid) != CP_BANK_2 && getCheckpointType(playerid) != CP_BANK_3) {
SendClientMessage(playerid, COLOR_YELLOW, "Vous devez etre dans une banque pour utiliser ça.");
return 1;
}
if(gang && playerGang[playerid]==0) {
SendClientMessage(playerid, COLOR_RED, "Vous n'etes pas dans un gang!");
return 1;
}

new tmp[256];
tmp = strtok(cmdtext, idx);

if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /(g)banque [montant]");
return 1;
}
moneys = strval(tmp);

if(moneys < 1) {
SendClientMessage(playerid, COLOR_YELLOW, "Hey Qu'est-ce que vous essayez de crediter ?.");
return 1;
}

if(GetPlayerMoney(playerid) < moneys) {
moneys = GetPlayerMoney(playerid);
}

GivePlayerMoney(playerid, 0-moneys);

if(gang)
gangBank[playerGang[playerid]]+=moneys;
else
bank[playerid]+=moneys;

if(gang)
format(string, sizeof(string), "Vous avez deposé %d$, votre solde est de %d$.", moneys, gangBank[playerGang[playerid]]);
else
format(string, sizeof(string), "Vous avez deposé %d$, your current balance is %d$.", moneys, bank[playerid]);

SendClientMessage(playerid, COLOR_YELLOW, string);

return 1;
}

//------------------- /withdraw

if(strcmp(cmd, "/retirer", true) == 0 || strcmp(cmd, "/gretirer", true) == 0) {
new gang;

if(IsPlayerInCheckpoint(playerid) == 0 || getCheckpointType(playerid) != CP_BANK && getCheckpointType(playerid) != CP_BANK_2 && getCheckpointType(playerid) != CP_BANK_3 ) {
SendClientMessage(playerid, COLOR_YELLOW, "Vous devez etre sur le checkpoint banque!.");
return 1;
}

if(strcmp(cmd, "/gretirer", true) == 0)
gang = 1;

if(gang && playerGang[playerid]==0) {
SendClientMessage(playerid, COLOR_RED, "Vous n'etes pas dans un gang!");
return 1;
}

new tmp[256];
tmp = strtok(cmdtext, idx);

if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /(g)retirer [montant]");
return 1;
}
moneys = strval(tmp);

if(moneys < 1) {
SendClientMessage(playerid, COLOR_YELLOW, "Hey qu'est-ce que t'essaies de retirer?.");
return 1;
}

if(gang) {
if(moneys > gangBank[playerGang[playerid]])
moneys = gangBank[playerGang[playerid]];
} else {
if(moneys > bank[playerid])
moneys = bank[playerid];
}

GivePlayerMoney(playerid, moneys);
if(gang)
gangBank[playerGang[playerid]] -= moneys;
else
bank[playerid] -= moneys;

if(gang)
format(string, sizeof(string), "Vous avez retiré %d$, votre solde gang est de %d$.", moneys, gangBank[playerGang[playerid]]);
else
format(string, sizeof(string), "Vous avez retiré %d$, votre solde est de %d$.", moneys, bank[playerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);

return 1;
}

//------------------- /balance

if(strcmp(cmd, "/solde", true) == 0 || strcmp(cmd, "/gsolde", true) == 0) {
new gang;
if(strcmp(cmd, "/gsolde", true) == 0)
gang = 1;

if(IsPlayerInCheckpoint(playerid) == 0 || getCheckpointType(playerid) != CP_BANK && getCheckpointType(playerid) != CP_BANK_2 && getCheckpointType(playerid) != CP_BANK_3) {
SendClientMessage(playerid, COLOR_YELLOW, "Vous devez etre a la banque pour faire ça.");
return 1;
}

if(gang && playerGang[playerid]==0) {
SendClientMessage(playerid, COLOR_RED, "Vous n'etes pas dans un gang!");
return 1;
}

if(gang)
format(string, sizeof(string), "Votre gang a %d$ en banque.", gangBank[playerGang[playerid]]);
else
format(string, sizeof(string), "Vous avez %d$ en banque.", bank[playerid]);
SendClientMessage(playerid, COLOR_YELLOW, string);

return 1;
}

 

recopiez simplement ce code et modifier selon votre guise si vous vous y connaissez assez

 

créer la commandes du gang

 

public PlayerLeaveGang(playerid) {
new string[256];
new playername[MAX_PLAYER_NAME];
new gangnum = playerGang[playerid];

if(gangnum > 0) {
for(new i = 0; i < gangInfo[gangnum][1]; i++) {
if(gangMembers[gangnum][i]==playerid) {

//Un membre de moins
gangInfo[gangnum][1]--;

for(new j = i; j < gangInfo[gangnum][1]; j++) {
//Shift gang members
gangMembers[gangnum][j]=gangMembers[gangnum][j+1];
}

//Disband gang if no more members
if(gangInfo[gangnum][1]<1) {
gangInfo[gangnum][0]=0;
gangInfo[gangnum][1]=0;
gangBank[gangnum]=0;
}

//Avertir les gangs
for(new j = 0; j < gangInfo[gangnum][1]; j++) {
GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
format(string, sizeof(string),"%s a quitté votre gang.", playername);
SendClientMessage(gangMembers[gangnum][j], COLOR_ORANGE, string);
}

format(string, sizeof(string),"Vous avez quitté le gang '%s' (id: %d)", gangNames[gangnum], gangnum);
SendClientMessage(playerid, COLOR_ORANGE, string);

playerGang[playerid]=0;

SetPlayerColor(playerid,playerColors[playerid]);

return;
}
}
} else {
SendClientMessage(playerid, COLOR_RED, "Vous n'etes pas dans un gang.");
}
}

public getCheckpointType(playerID) {
return checkpointType[playerCheckpoint[playerID]];
}

public isPlayerInArea(playerID, Float:data[4])
{
new Float:X, Float:Y, Float:Z;

GetPlayerPos(playerID, X, Y, Z);
if(X >= data[0] && X <= data[2] && Y >= data[1] && Y <= data[3]) {
return 1;
}
return 0;
}

public PayPlayerInArea(playerID, Float:x1, Float:y1, Float:x2, Float:y2, cash)
{

if(IsPlayerConnected(playerID))
{
new Float:X, Float:Y, Float:Z;

GetPlayerPos(playerID, X, Y, Z);
if(X >= x1 && X <= x2 && Y >= y1 && Y <= y2)
{
GivePlayerMoney(playerID, cash);
return 1;
}
}
return 0;
}

 

recopiez une fois de plus tout ce code modifier aussi a votre guise si l’envie se fait sentir

 

commande admin d’arme

 

 

if(IsPlayerAdmin(playerid) == 1 && strcmp(cmdtext, "/[texte de la cmd]", true)==0)
{

GivePlayerWeapon(playerid, [ID de l’arme], [munitions]);

 

 

 

vous pouvez aussi combinez les armes pour donner un truc de ce genre

 

if(IsPlayerAdmin(playerid) == 1 && strcmp(cmdtext, "/arme", true)==0)

{

 

GivePlayerWeapon(playerid, 8, 1);

GivePlayerWeapon(playerid, 18, 9999);

GivePlayerWeapon(playerid, 24, 9999);

GivePlayerWeapon(playerid, 27, 9999);

GivePlayerWeapon(playerid, 28, 9999);

GivePlayerWeapon(playerid, 31, 9999);

GivePlayerWeapon(playerid, 34, 9999);

GivePlayerWeapon(playerid, 38, 9999);

GivePlayerWeapon(playerid, 44, 1);

 

return 1;

}

je m’en suis servi dans RDLM

 

afficher un texte apres une manipulation du jouer

 

 

if(strcmp(cmd, "/help", true) ==0) {
SendPlayerFormattedText(playerid,"[votre texte ici]",0);
return 1;
}

 

 

voila pour aujourd’hui suite a venir

 

Si vous avez des questions n'hésiez pas

Modifié par Turkish_boy
Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...