Tutek polega na pokazaniu wam jak zrobić monety do znanego wam moda Call of duty.
Za 1 fraga dostajemy 1 monetę ilość maksymalna monet wynosi 300.
W zamian za monety możemy kopić coś w sklepie komenda: /sklep
Instrukcja:
Szukamy:
doswiadczenie_za_bombe
Dodajemy za:
new doswiadczenie_za_pake;
new doswiadczenie_za_killa;
Szukamy:
new doswiadczenie_gracza[33];
Dodajemy za:
new doswiadczeniezdobycia_monety[33];
new monety_gracza[33] = 1;
Szukamy:
new nowa_klasa_gracza[33];
Dodajemy za:
new const doswiadczenie_monety [] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,
41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,
91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,
135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,178,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,200,
201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,
231,232,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,
270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314};
Szukamy:
doswiadczenie_za_bombe = get_cvar_num("cod_bombxp");
Dodajemy za:
doswiadczenie_za_pake = 1;
doswiadczenie_za_killa = 1;
Szukamy:
if(get_user_team(id) != get_user_team(attacker) && klasa_gracza[attacker])
{
new nowe_doswiadczenie = 0;
Dodajemy za:
new nowe_doswiadczenies = 0;
nowe_doswiadczenies += doswiadczenie_za_killa;
Szukamy:
set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
ShowSyncHudMsg(attacker, SyncHudObj2, "+%i", nowe_doswiadczenie);
doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
Zmieniamy na:
set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
ShowSyncHudMsg(attacker, SyncHudObj2, "Zdobyles %i monet i %i doswiadczenia", nowe_doswiadczenies,nowe_doswiadczenie);
doswiadczenie_gracza[attacker] += nowe_doswiadczenie;
doswiadczeniezdobycia_monety[attacker] += nowe_doswiadczenies;
Szukamy:
SprawdzPoziom(attacker);
Dodajemy przed:
SprawdzMonety(attacker);
Szukamy:
klasa_gracza[id] = 0;
poziom_gracza[id] = 0;
Dodajemy za:
monety_gracza[id] = 0;
doswiadczeniezdobycia_monety[id] = 0;
Szukamy:
new Players[32], playerCount, id;
get_players(Players, playerCount, "aeh", "TERRORIST");
if(get_playersnum() > 1)
{
Dodajemy za:
doswiadczeniezdobycia_monety[podkladajacy] += doswiadczenie_za_pake;
Szukamy:
if(id != podkladajacy)
{
Dodajemy za:
doswiadczeniezdobycia_monety[id] += doswiadczenie_za_pake;
Szukamy:
else
{
client_print(id, print_chat, "[COD:MW] Dostales %i doswiadczenia i %i monet doswiadczenia za podlozenie bomby.", doswiadczenie_za_bombe, doswiadczenie_za_pake);
}
SprawdzPoziom(id);
Dodajemy za:
SprawdzMonety(id);
Szukamy:
public ZapiszDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa_gracza[id]);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id]);
nvault_set(g_vault,vaultkey,vaultdata);
}
Zmieniamy na:
public ZapiszDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa_gracza[id]);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id], doswiadczeniezdobycia_monety[id], monety_gracza[id]);
nvault_set(g_vault,vaultkey,vaultdata);
}
Szukamy:
public WczytajDane(id, klasa)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new doswiadczeniegracza[32], poziomgracza[32], inteligencjagracza[32], silagracza[32], zrecznoscgracza[32], zwinnoscgracza[32];
parse(vaultdata, doswiadczeniegracza, 31, poziomgracza, 31, inteligencjagracza, 31, silagracza, 31, zrecznoscgracza, 31, zwinnoscgracza, 31);
doswiadczenie_gracza[id] = str_to_num(doswiadczeniegracza);
poziom_gracza[id] = str_to_num(poziomgracza)>0?str_to_num(poziomgracza):1;
inteligencja_gracza[id] = str_to_num(inteligencjagracza);
zdrowie_gracza[id] = str_to_num(silagracza);
wytrzymalosc_gracza[id] = str_to_num(zrecznoscgracza);
kondycja_gracza[id] = str_to_num(zwinnoscgracza);
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id];
}
Zmieniamy na:
public WczytajDane(id, klasa)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-cod", nazwa_gracza[id], klasa);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id], doswiadczeniezdobycia_monety[id], monety_gracza[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new doswiadczeniegracza[32], poziomgracza[32], inteligencjagracza[32], silagracza[32], zrecznoscgracza[32], zwinnoscgracza[32], doswmonety[32], monety[32] ;
parse(vaultdata, doswiadczeniegracza, 31, poziomgracza, 31, inteligencjagracza, 31, silagracza, 31, zrecznoscgracza, 31, zwinnoscgracza, 31, doswmonety, 31, monety, 31);
doswiadczenie_gracza[id] = str_to_num(doswiadczeniegracza);
poziom_gracza[id] = str_to_num(poziomgracza)>0?str_to_num(poziomgracza):1;
inteligencja_gracza[id] = str_to_num(inteligencjagracza);
zdrowie_gracza[id] = str_to_num(silagracza);
wytrzymalosc_gracza[id] = str_to_num(zrecznoscgracza);
kondycja_gracza[id] = str_to_num(zwinnoscgracza);
doswiadczeniezdobycia_monety[id] = str_to_num(doswmonety);
monety_gracza[id] = str_to_num(monety);
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id];
}
Szukamy:
public SprawdzPoziom(id)
{
if(poziom_gracza[id] < 801)
{
while(doswiadczenie_gracza[id] >= doswiadczenie_poziomu[poziom_gracza[id]])
{
poziom_gracza[id]++;
set_hudmessage(60, 200, 25, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2);
ShowSyncHudMsg(id, SyncHudObj3, "Awansowales do nastepnego poziomu!");
client_cmd(id, "spk QTM_CodMod/levelup");
}
punkty_gracza[id] = (poziom_gracza[id]-1)*1-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id]-skoki_gracza[id];
}
ZapiszDane(id);
}
Dodajemy za:
public SprawdzMonety(id)
{
if(monety_gracza[id] < 304)
{
while(doswiadczeniezdobycia_monety[id] >= dosiwadczenie_monety[monety_gracza[id]])
{
monety_gracza[id]++;
set_hudmessage(60, 200, 25, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2);
ShowSyncHudMsg(id, SyncHudObj3, "Dostałes Monete !");
}
}
ZapiszDane(id);
}
Szukamy:
public PokazInformacje(id)
{
id -= ZADANIE_POKAZ_INFORMACJE;
set_task(0.1, "PokazInformacje", id+ZADANIE_POKAZ_INFORMACJE);
if(!is_user_alive(id))
{
new target = entity_get_int(id, EV_INT_iuser2);
if(target == 0)
return PLUGIN_CONTINUE;
set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nDoswiadczenie : %i / %i^nPoziom : %i^nPrzedmiot : %s", nazwy_klas[klasa_gracza[target]], doswiadczenie_gracza[target], doswiadczenie_poziomu[poziom_gracza[target]], poziom_gracza[target], nazwy_przedmiotow[informacje_przedmiotu_gracza[target][0]]);
return PLUGIN_CONTINUE;
}
set_hudmessage(255, 0, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Doswiadczenie : %i / %i]^n[Poziom : %i]^n[Przedmiot : %s]", nazwy_klas[klasa_gracza[id]], doswiadczenie_gracza[id], doswiadczenie_poziomu[poziom_gracza[id]], poziom_gracza[id], nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]]);
return PLUGIN_CONTINUE;
}
Zmieniamy na:
public PokazInformacje(id)
{
id -= ZADANIE_POKAZ_INFORMACJE;
set_task(0.1, "PokazInformacje", id+ZADANIE_POKAZ_INFORMACJE);
if(!is_user_alive(id))
{
if(!is_valid_ent(id))
return PLUGIN_CONTINUE;
new target = entity_get_int(id, EV_INT_iuser2);
if(target == 0)
return PLUGIN_CONTINUE;
set_hudmessage(255, 255, 255, 0.7, 0.5, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Klasa : %s^nDoswiadczenie : %i / %i^nPoziom : %i^nPrzedmiot : %s^nMonety : %i", nazwy_klas[klasa_gracza[target]],
doswiadczenie_gracza[target], doswiadczenie_poziomu[poziom_gracza[target]], poziom_gracza[target], nazwy_przedmiotow[informacje_przedmiotu_gracza[target][0]], monety_gracza[target]);
return PLUGIN_CONTINUE;
}
new zdrowie[33]
zdrowie[id] = get_user_health(id);
set_hudmessage(255, 0, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
ShowSyncHudMsg(id, SyncHudObj, "[Klasa : %s]^n[Doswiadczenie : %i / %i]^n[Poziom : %i]^n[Przedmiot : %s]^n[Monety : %i]", nazwy_klas[klasa_gracza[id]], doswiadczenie_gracza[id], doswiadczenie_poziomu[poziom_gracza[id]], poziom_gracza[id], nazwy_przedmiotow[informacje_przedmiotu_gracza[id][0]], monety_gracza[id]);
return PLUGIN_CONTINUE;
}
Teraz gdy posiadamy zrobiony sklep.
Musimy ustawić żeby zamian pobieranych nam pieniędzy pobierało monety.
Usuwamy wszystkie linijki:
new kasa = cs_get_user_money(id)
Szukamy:
cs_set_user_money(id, kasa_gracza-koszt);
Zmieniamy na:
monety_gracza[id] -= koszt;
doswiadczeniezdobycia_monety[id] -= koszt;
Szukamy:
if (kasa_gracza<koszt)
Zmieniamy na:
if (monety_gracza[id]<koszt)
Powinno działać
Użytkownik QTM. Peyote edytował ten post 25.04.2011 19:09
Poprawiono literówkę "dosiwadczenie_monety"