VIP RENDSZER v1.0
Parancsok:
/vipad - rCon admin használhatja. ( VIP rangot lehet adni a játékosnak. )
/vipel - rCon admin használhatja. ( VIP rangot tudunk elvenni a játékostól. )
/vipv - VIP tag saját jármûvet hívhat le magának, ha már egyet lehívtunk az elõzõ törlõdik. )
======================================
VIP rangal járó \"bónuszok\":
Sima játékos ha megöl valakit 1000$ -t és 1 score-t kap. Illetve a meggyilkolttól levonásra kerül pont / pénz. Ha a VIP játékos megöl valakit 2000$-t és 2 score-t kap. Halál esetén semmi sem vonódik le.
/*-------------------------------------------------------------*/
FONTOS: Tesztelni nem tudtam, ezért a hibákért elnézést kérek, legyetek szívesek leírni hsz.-ban a bugokat, illetve ötleteket. Készítette: Én( Fl0rian ).
Elkészítési idõ: fél óra - háromnegyed óra ( Nem néztem )
Rosszalkodik a netem így nem tudtam feltölteni semmilyen tárhelyre, íme a kód:
Code: #include <a_samp>
#include <dini>
#include <sscanf2>
#include <zcmd>
enum Something
{
VIP
}
new pInfo[MAX_PLAYERS][something];
new lerakva[MAX_PLAYERS];
#pragma tabsize 0
#pragma unused ret_memcpy
public OnFilterScriptInit()
{
print(\"\\n-=--=---=----=----=--=-=--=--=--=---\");
print(\"\\n Vip rendszer betöltve by: Fl0rian\");
print(\"\\n-=--=---=----=----=--=-=--=--=--=---\");
return 1;
}
public OnFilterScriptExit()
{
print(\"\\n-=--=---=----=----=--=-=--=--=--=---\");
print(\"\\n Vip rendszer kiiktatva by: Fl0rian\");
print(\"\\n-=--=---=----=----=--=-=--=--=--=---\");
for(new playrs = 0; playrs < MAX_PLAYERS; playrs++)
{
if(pInfo[playrs][VIP] == 1) SendClientMessage(playrs, -111, \"VIP rendszer kikapcsolva, nem vagy VIP.\");
pInfo[playrs][VIP] = 0;
}
return 1;
}
public OnPlayerConnect(playerid)
{
new stR[100], pName[MAX_PLAYER_NAME];
GetPlayerName(playerid, pName, sizeof(pName));
format(stR, sizeof(stR), \"/Vipek/%s.ini\", pName);
if(dini_Exists(stR)) pInfo[playerid][VIP] = 1;
else if(!dini_Exists(stR)) pInfo[playerid][VIP] = 0;
if(pInfo[playerid][VIP] == 0) return SendClientMessage(playerid, -111, \"Üdvözöllek a szerveren.\");
SendClientMessage(playerid, -111, \"Üdvözöllek a szerveren.\");
SendClientMessage(playerid, -111, \"Te VIP tag vagy, a következõ bónuszok járnak a VIP tagsággal:\");
SendClientMessage(playerid, -111, \"** ================================== **\");
SendClientMessage(playerid, -111, \"- Extra pénz és pont az ölésekért.\");
SendClientMessage(playerid, -111, \"- Halál esetén nincs pénz levonás.\");
SendClientMessage(playerid, -111, \"- /vipv parancs VIP jármû lerakásához.\");
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
pInfo[playerid][VIP] = 0;
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if(pInfo[playerid][VIP] == 1) return SendClientMessage(playerid, -111, \"VIP tagság miatt nincs pont / pénzlevonás.\");
if(pInfo[killerid][VIP] == 1) return SetPlayerMoney(killerid, GetPlayerMoney(killerid) + 2000); SetPlayerScore(killerid, GetPlayerScore(killerid) + 2);
SetPlayerScore(playerid, GetPlayerScore(playerid) - 1);
SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
SetPlayerMoney(playerid, GetPlayerMoney(playerid) - 1000);
SetPlayerMoney(killerid, GetPlayerMoney(killerid) + 1000);
return 1;
}
CMD:vipad(playerid, params[])
{
new pID, pName[MAX_PLAYER_NAME], aName[MAX_PLAYERS], stR[128], stR2[100], stR3[100];
if(sscanf(params,\"u\",pID))return SendClientMessage(playerid, -111, \"Használat: /vipad [iD]\");
if(pID == INVALID_PLAYER_ID) return SendClientMessage(playerid, -111, \"Érvénytelen játékos ID.\");
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -111, \"Nem vagy admin.\");
if(pInfo[playerid][VIP] == 1) return SendClientMessage(playerid, -111, \"A játékos VIP tag.\");
format(stR3, sizeof(stR3), \"/Vipek/%s.ini\", pName);
dini_Create(stR3);
pInfo[pID][VIP] = 1;
GetPlayerName(pID, pName, sizeof(pName));
format(stR, sizeof(stR), \"aInfo: Kinevezted %s-t VIP taggá.\", pName);
SendClientMessage(playerid, -111, stR);
SendClientMessage(pID, -111, \"pInfo: Kineveztek VIP taggá.\");
GetPlayerName(playerid, aName, sizeof(aName));
format(stR2, sizeof(stR2), \"%s használta a /vipad parancsot.\",aName);
printf(stR2);
return 1;
}
CMD:vipel(playerid, params[])
{
new pID, pName[MAX_PLAYER_NAME], aName[MAX_PLAYERS], stR[128], stR2[100], stR3[100];
if(sscanf(params,\"u\",pID))return SendClientMessage(playerid, -111, \"Használat: /vipel [iD]\");
if(pID == INVALID_PLAYER_ID) return SendClientMessage(playerid, -111, \"Érvénytelen játékos ID.\");
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -111, \"Nem vagy admin.\");
if(pInfo[playerid][VIP] == 0) return SendClientMessage(playerid, -111, \"A játékos nem VIP tag.\");
format(stR3, sizeof(stR3), \"/Vipek/%s.ini\", pName);
dini_Remove(stR3);
pInfo[pID][VIP] = 1;
GetPlayerName(pID, pName, sizeof(pName));
format(stR, sizeof(stR), \"aInfo: Elvetted a VIP tagságot tõle: %s.\", pName);
SendClientMessage(playerid, -111, stR);
SendClientMessage(pID, -111, \"pInfo: Már nem vagy VIP tag.\");
GetPlayerName(playerid, aName, sizeof(aName));
format(stR2, sizeof(stR2), \"%s használta a /vipel parancsot.\",aName);
printf(stR2);
return 1;
}
CMD:vipv(playerid, params[])
{
new vModell, vCola, vColb, vPlate[8];
new stR[200];
new caR;
new Float: xPos, Float:yPos, Float:zPos;
if(sscanf(params,\"iiis[8]\",vModell, vCola, vColb, vPlate))return SendClientMessage(playerid, -111, \"Használat: /vipv [Modell ID] [Color 1] [Color 2] [Rendszám]\");
if(pInfo[playerid][VIP] == 0) return SendClientMessage(playerid, -111, \"Ez a funkció csak VIP tagoknak elérhetõ.\");
if(vModell <= 399 || vModell >= 612) return SendClientMessage(playerid, -111, \"Hibás jármû modell. ( 400 - 611 )\");
if( vCola < 0 || vColb < 0) return SendClientMessage(playerid, -111, \"Helytelen színkód.\");
GetPlayerPos(playerid, xPos, yPos, zPos);
if(lerakva[playerid] == 1) DestroyVehicle(caR);
caR = CreateVehicle(vModell, xPos, yPos + 2, zPos + 0.5, 180,vCola, vColb, -1);
SetVehicleNumberPlate(caR, vPlate);
lerakva[playerid] = 1;
format(stR, sizeof(stR),\"Színei: %d %d\\nModell ID: %d\\nRendszám:%s\", vCola, vColb, vModell, vPlate);
SendClientMessage(playerid, -111, \"Sikeresen létrehoztad a jármûvet. Adatai:\");
SendClientMessage(playerid, -111, stR);
return 1;
}