[Pomoc] Komanda Give


Započeo Rbr97, Avgust 16, 2014, 00:40:22 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim:
Detaljan opis problema:
Napravio sam komandu give ali ovako sa parametrima da mozes birati šta zelis ali ne znam napraviti kako da ide da moras ici /give [Item] [ID] [Koliko]
Dio skripte:
CMD:give(playerid,params[])
{
    new option[20];

    if(sscanf(params, "s[20]", option)) return SendClientMessage(playerid,-1, "{FFF700}[Koristite] /give [Skill/Rank/Drugs/Money/Cigarete]");

    if(!strcmp(option, "skill", true))
    {
 	    new id, admin;
 	    if(PlayerInfo[playerid][pArea] > 1) return SCM(playerid,-1,"{FF0000}[Greska] Nemozete koristiti komande u dok ste u arei!");
 	    if(!IsPlayerAdmin(playerid)) return SCM(playerid,-1,"{FF0000}[Greska] Niste autorizirani za koriÅ¡tenje ove komande!");
	    new targetid,type, string[128];
	    if(sscanf(params, "ud", targetid, type)) return SendClientMessage(playerid, -1, "{FFF700}[Koristite] /skill [Ime_Prezime/ID] [Kolicina]");
	    if(targetid == playerid)return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemožete sami sebi dati Skill Posla!");
	    PlayerInfo[targetid][pSkill] += type;
	    new sendername[MAX_PLAYERS];
	    new targetigrac[MAX_PLAYERS];
	    GetPlayerName(playerid, sendername, sizeof(sendername));
	    GetPlayerName(targetid, targetigrac, sizeof(targetigrac));
 		PlayerInfo[id][pAdmin] = admin;
	 	FSCM(id, -1, "{FFF700}[INFO] Dobili ste Skill Posla [+%d] od strane Admina %s!", type, sendername);
	  	format(string, sizeof(string), "{FF0000}[Admin OBAVIJESTI] Admin %s je dodao Skill Posla igracu %s |Skill +%d| ",sendername,targetigrac,type);
	    SendAdminMessage(-1, string);
        return 1;
    }
	if(!strcmp(option, "rank", true))
    {
 	    if(PlayerInfo[playerid][pArea] > 1) return SCM(playerid,-1,"{FF0000}[Greska] Nemozete koristiti komande u dok ste u arei!");
		if(PlayerInfo[playerid][pLider] == 0) return SCM(playerid,-1,"{FF0000}[Greska] Niste autorizirani za korištenje ove komande!");
	    new id, rank;
		if(sscanf(params,"ui",id,rank)) return SendClientMessage(playerid, -1, "{FFF700}[Koristite] /rank [Ime_Prezime/ID] [Rank]");
		else if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "{FF0000}[Greska] Krivi ID igraca!");
		if(PlayerInfo[playerid][pLider] != PlayerInfo[id][pMember])  return SendClientMessage(playerid, -1, "{FF0000}[Greska] Igrac nije u vaÅ¡oj organizaciji!");
		if(rank < 1 || rank > 5) return SendClientMessage(playerid, -1, "{FF0000}[Greska] Rankovi samo od 1-5!");
		new ime[MAX_PLAYER_NAME]; GetPlayerName(playerid, ime, sizeof(ime));
		new igrac[MAX_PLAYER_NAME]; GetPlayerName(id, igrac, sizeof(igrac));
		PlayerInfo[id][pRank] = rank;
		PlayerInfo[id][pModel] = OrgSkinovi[PlayerInfo[id][pMember]][rank-1];
		SetPlayerSkin(id, PlayerInfo[id][pModel]);
		FSCM(id, -1, "{26FF00}[INFO] Postavljen vam je rank %d od strane Lidera %s", rank, ime);
		PlayerPlaySound(id, 1149, 0.0, 0.0, 0.0);
		FSCM(playerid, -1, "{FFF700}[INFO] Igracu %s ste postavili rank na %d ", igrac,rank);
        return 1;
    }
    if(!strcmp(option, "drugs", true))
    {
 	    if(PlayerInfo[playerid][pMember] != 6 && PlayerInfo[playerid][pMember] != 7 && PlayerInfo[playerid][pLider] != 6 && PlayerInfo[playerid][pLider] > 7 && PlayerInfo[playerid][pAdmin] > 1) return SCM(playerid,-1,"{FF0000}[Greska] Niste autorizirani za koriÅ¡tenje ove komande!");
 	    if(PlayerInfo[playerid][pArea] > 1) return SCM(playerid,-1,"{FF0000}[Greska] Nemozete koristiti komande u dok ste u arei!");
	    new targetid,type, string[128];
	    if(sscanf(params, "ud", targetid, type)) return SendClientMessage(playerid, -1, "{FFF700}[Koristite] /drugs [Ime_Prezime/ID] [Kolicina]");
	    if(type > PlayerInfo[playerid][pDroga])return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemate toliko droge kod sebe!");
	    if(targetid == playerid)return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemožete dati sami sebe drogu!");
	    if(!PlayerToPlayer(playerid, targetid,5.0)) return SendClientMessage(playerid,-1,"{FF0000}[Greska] Niste dovoljno blizu toga igraca!");
	    PlayerInfo[playerid][pDroga] -= type;
	    PlayerInfo[targetid][pDroga] +=type;
	    new sendername[MAX_PLAYERS];
	    new targetigrac[MAX_PLAYERS];
	    GetPlayerName(playerid, sendername, sizeof(sendername));
	    GetPlayerName(targetid, targetigrac, sizeof(targetigrac));
		format(string, sizeof(string), "{FC00DB} *%s vadi nesto droge te je daje %s-u.", sendername, targetigrac);
		ProxDetector(3.0, playerid, string, -1);
        return 1;
    }
    if(!strcmp(option, "money", true))
    {
 	    if(PlayerInfo[playerid][pArea] > 1) return SCM(playerid,-1,"{FF0000}[Greska] Nemozete koristiti komande u dok ste u arei!");
	    new targetid,type, string[128];
	    if(sscanf(params, "ud", targetid, type)) return SendClientMessage(playerid, -1, "{FFF700}[Koristite] /money [Ime_Prezime/ID] [Kolicina]");
     	if(targetid == playerid)return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemožete dati sami sebi novac!");
	    if(type > PlayerInfo[playerid][pNovac])return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemate toliko novaca kod sebe!");
	    if(!PlayerToPlayer(playerid, targetid,5.0)) return SendClientMessage(playerid,-1,"{FF0000}[Greska] Niste dovoljno blizu toga igraca!");
	    if(type > 1000) return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemoze preko 1000!");
	    GivePlayerMoney(targetid, type);
	    GivePlayerMoney(playerid, -type);
	    new sendername[MAX_PLAYERS];
	    new targetigrac[MAX_PLAYERS];
	    GetPlayerName(playerid, sendername, sizeof(sendername));
	    GetPlayerName(targetid, targetigrac, sizeof(targetigrac));
		format(string, sizeof(string), "{FC00DB} *%s vadi nesto novca te je daje %s-u.", sendername, targetigrac);
		ProxDetector(3.0, playerid, string, -1);
        return 1;
    }
    if(!strcmp(option, "cigarete", true))
    {
 	    if(PlayerInfo[playerid][pArea] > 1) return SCM(playerid,-1,"{FF0000}[Greska] Nemozete koristiti komande u dok ste u arei!");
	    new targetid,type, string[128];
	    if(sscanf(params, "ud", targetid, type)) return SendClientMessage(playerid, -1, "{FFF700}[Koristite] /cigarete [Ime_Prezime/ID] [Kolicina]");
     	if(targetid == playerid)return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemožete dati sami sebi cigarete!");
	    if(type > PlayerInfo[playerid][pCigarete])return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemate toliko cigareta kod sebe!");
	    if(!PlayerToPlayer(playerid, targetid,5.0)) return SendClientMessage(playerid,-1,"{FF0000}[Greska] Niste dovoljno blizu toga igraca!");
	    if(type > 20) return SendClientMessage(playerid,-1,"{FF0000}[Greska] Nemoze preko 20!");
		PlayerInfo[targetid][pCigarete] +=type;
		PlayerInfo[playerid][pCigarete] -=type;
	    new sendername[MAX_PLAYERS];
	    new targetigrac[MAX_PLAYERS];
	    GetPlayerName(playerid, sendername, sizeof(sendername));
	    GetPlayerName(targetid, targetigrac, sizeof(targetigrac));
		format(string, sizeof(string), "{FC00DB} *%s vadi nesto cigareta te daje %s-u.", sendername, targetigrac);
		ProxDetector(3.0, playerid, string, -1);
        return 1;
    }
    return 1;
}


Neke slike/video za lakse dobivanje pomoci(neobavezno):

Pa gore na globalnom parametru stavis kos dodas za id i kolicinu a pod itemima nemoras opce dodavat parametre ako to napravis
Software Developer