←  Problemy z pluginami

AMXX.pl: Support AMX Mod X i SourceMod

»

Odejmowanie kasy u gracza

Zablokowany

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 01.04.2011

Mam takie menu w sklepie, jak zrobić aby po kupieniu czegos odejmowało kase graczowi ?


public zakupy(id)
{
new menu = menu_create("CsStrefa.pl [SKLEP]", "zakupy_contiune");
menu_additem(menu, "Dodatkowe zycie \r[150 HP] \yKoszt: \r3500$", "1", 0);
menu_additem(menu, "Zestaw granatow \r[He,FB,SB] \yKoszt: \r4500$", "2", 0);
menu_additem(menu, "RedBull \r[Szybkie Chodzenie] \yKoszt: \r2000$", "3", 0);
menu_additem(menu, "Doswiadczenie \r[Dodaje 50 Expa] \yKoszt: \r16000$", "4", 0);
menu_additem(menu, "Lotto \r[Totek] \yKoszt: \r2000$", "5", 0);

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)

menu_display(id, menu);
}

public zakupy_contiune(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

new data[6], iName[64]
new acces, callback
menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)

new key = str_to_num(data)

switch(key)
{
case 1:{
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles dodatkowe zycie! Masz teraz^x04 150^x01 HP!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 2:{
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles^x04 Zestaw granatow!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 3:{
ColorChat(id, GREEN, "[SKLEP]^x01 Wypiles^x04 RedBulla!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 4:{
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles^x04 50^x01 expa!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 5:{
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles kupon^x04 Lotto!")
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}

Użytkownik LucKy_skiLL edytował ten post 01.04.2011 11:18
Odpowiedz

FreZZy - zdjęcie FreZZy 01.04.2011

w każdym case na samym początku daj:


if (!UTIL_Buyformoney(id,XXX))
return PLUGIN_HANDLED


i na koniec diablo


public bool:UTIL_Buyformoney(id,amount)
{
if (cs_get_user_money(id) >= amount)
{
cs_set_user_money(id,cs_get_user_money(id)-amount)
return true
}
else
{
hudmsg(id,2.0,"Nie masz tyle zlota")
return false
}

return false
}


XXX - ilość kasy, jaką ma kosztować to coś
Odpowiedz

  • +
  • -
Change - zdjęcie Change 01.04.2011

Np gdy coś kosztuje 2000 to dajesz
cs_set_user_money(id, cs_get_user_money(id)-2000);
Odpowiedz

FreZZy - zdjęcie FreZZy 01.04.2011

Change, ale jak ma 0 kasy, to będzie miał -2000, a itemek czy co tam ma być i tak dostanie
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 01.04.2011

"i na koniec diablo"


yy jakiego diablo ?
Odpowiedz

FreZZy - zdjęcie FreZZy 01.04.2011

sory, z rozpędu :D

na koniec pluginu
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 01.04.2011

public zakupy(id)
{
new menu = menu_create("CsStrefa.pl \r[SKLEP]", "zakupy_contiune");
menu_additem(menu, "Dodatkowe zycie \r[150 HP] \yKoszt: \r3500$", "1", 0);
menu_additem(menu, "Zestaw granatow \r[He,FB,SB] \yKoszt: \r4500$", "2", 0);
menu_additem(menu, "RedBull \r[Szybkie Chodzenie] \yKoszt: \r2000$", "3", 0);
menu_additem(menu, "Doswiadczenie \r[Dodaje 50 Expa] \yKoszt: \r16000$", "4", 0);
menu_additem(menu, "Lotto \r[Totek] \yKoszt: \r2000$", "5", 0);

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)

menu_display(id, menu);
}

public zakupy_contiune(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
ColorChat(id,GREEN,"[SKLEP]^x01 Nie masz wystarczajacej ilosci pieniedzy.");
new data[6], iName[64]
new acces, callback
menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)

new key = str_to_num(data)

switch(key)
{
case 1:{
if (!UTIL_Buyformoney(id,3500))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles dodatkowe zycie! Masz teraz^x04 150^x01 HP!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 2:{
if (!UTIL_Buyformoney(id,4500))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles^x04 Zestaw granatow!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 3:{
if (!UTIL_Buyformoney(id,2000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Wypiles^x04 RedBulla!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 4:{
if (!UTIL_Buyformoney(id,16000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles^x04 50^x01 expa!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 5:{
if (!UTIL_Buyformoney(id,2000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles kupon^x04 Lotto!")
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
menu_destroy(menu)
return PLUGIN_HANDLED

}

public bool:UTIL_Buyformoney(id,amount)
{
if (cs_get_user_money(id) >= amount)
{
cs_set_user_money(id,cs_get_user_money(id)-amount)
return true
}
else
{
hudmsg(id,2.0,"Nie masz wystarczajacej ilosci pieniedzy!")
return false
}

return false
}


ffa_expmod.sma(209) : error 017: undefined symbol "cs_get_user_money"
ffa_expmod.sma(211) : error 017: undefined symbol "cs_set_user_money"
ffa_expmod.sma(216) : error 017: undefined symbol "hudmsg"
Odpowiedz

FreZZy - zdjęcie FreZZy 01.04.2011

dodaj na górze pluga

#include <cstrike>


i zamień

hudmsg(id,2.0,"Nie masz wystarczajacej ilosci pieniedzy!")


na

ColorChat(id, GREEN, "[PLUGIN XXX] ^x01Nie masz wystarczajacej ilosci pieniedzy!")

Użytkownik FreZZy edytował ten post 01.04.2011 17:19
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 01.04.2011

A mozna zamiast tego:

hudmsg(id,2.0,"Nie masz wystarczajacej ilosci pieniedzy!")



Dac to:


ColorChat(id,GREEN,"[SKLEP]^x01 Nie masz wystarczajacej ilosci pieniedzy.");




Bo sie kompiluje ale nie wiem czy bedzie dzialac
Użytkownik LucKy_skiLL edytował ten post 01.04.2011 17:18
Odpowiedz

FreZZy - zdjęcie FreZZy 01.04.2011

tak jak napisałem post wyżej można ;)

zmieniałem jak ty pisałeś swoje
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 01.04.2011

Jeszcze jedno jak cos kupie to mam tak:


[SKLEP] Nie masz wystarczajacej ilosci pieniedzy.
[SKLEP] Kupiles kupon Lotto


A jak nie mam pieniedzy to:

[SKLEP] Nie masz wystarczajacej ilosci pieniedzy.
[SKLEP] Nie masz wystarczajacej ilosci pieniedzy.
Odpowiedz

FreZZy - zdjęcie FreZZy 01.04.2011

pokaż kod, bo zmieniałeś
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 01.04.2011

public zakupy_contiune(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
ColorChat(id,GREEN,"[SKLEP]^x01 Nie masz wystarczajacej ilosci pieniedzy.");
new data[6], iName[64]
new acces, callback
menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)

new key = str_to_num(data)

switch(key)
{
case 1:{
if (!UTIL_Buyformoney(id,3500))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles dodatkowe zycie! Masz teraz^x04 150^x01 HP!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 2:{
if (!UTIL_Buyformoney(id,4500))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles^x04 Zestaw granatow!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 3:{
if (!UTIL_Buyformoney(id,2000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Wypiles^x04 RedBulla!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 4:{
if (!UTIL_Buyformoney(id,16000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles^x04 50^x01 expa!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 5:{
if (!UTIL_Buyformoney(id,2000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles kupon^x04 Lotto!")
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
menu_destroy(menu)
return PLUGIN_HANDLED

}

public bool:UTIL_Buyformoney(id,amount)
{
if (cs_get_user_money(id) >= amount)
{
cs_set_user_money(id,cs_get_user_money(id)-amount)
return true
}
else
{
ColorChat(id,GREEN,"[SKLEP]^x01 Nie masz wystarczajacej ilosci pieniedzy.");
return false
}

return false
}
Odpowiedz

FreZZy - zdjęcie FreZZy 01.04.2011

public zakupy_contiune(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
ColorChat(id,GREEN,"[SKLEP]^x01 Nie masz wystarczajacej ilosci pieniedzy.");
new data[6], iName[64]
new acces, callback menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)


a po co to O.o ?

ColorChat(id,GREEN,"[SKLEP]^x01 Nie masz wystarczajacej ilosci pieniedzy.");
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 02.04.2011

Dalej sie duplikuje


public zakupy_contiune(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64]
new acces, callback
menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)

new key = str_to_num(data)

switch(key)
{
case 1:{
if (!UTIL_Buyformoney(id,3500))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles dodatkowe zycie! Masz teraz^x04 150^x01 HP!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 2:{
if (!UTIL_Buyformoney(id,4500))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles^x04 Zestaw granatow!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 3:{
if (!UTIL_Buyformoney(id,2000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Wypiles^x04 RedBulla!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 4:{
if (!UTIL_Buyformoney(id,16000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles^x04 50^x01 expa!")
menu_destroy(menu)
return PLUGIN_HANDLED
}

case 5:{
if (!UTIL_Buyformoney(id,2000))
return PLUGIN_HANDLED
ColorChat(id, GREEN, "[SKLEP]^x01 Kupiles kupon^x04 Lotto!")
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
menu_destroy(menu)
return PLUGIN_HANDLED

}

public bool:UTIL_Buyformoney(id,amount)
{
if (cs_get_user_money(id) >= amount)
{
cs_set_user_money(id,cs_get_user_money(id)-amount)
return true
}
else
{
ColorChat(id,GREEN,"[SKLEP]^x01 Nie masz wystarczajacej ilosci pieniedzy.");
}
return false
}
Odpowiedz

FreZZy - zdjęcie FreZZy 02.04.2011

nie ma takiej opcjii żeby się duplikował

skompilowałeś i wrzuciłeś?

wszystko w plugin i plugins.ini oks?
Odpowiedz

  • +
  • -
BinDer - zdjęcie BinDer 03.04.2011

A może tak? Nie wiem czy dobrze ale możliwe że będzie działać.
case 2:
		{
			new koszt = 5000;
			if (kasa_gracza<koszt)
			{
				ColorChat(id,GREEN,"[SilentShot.pl]^x01 Nie masz wystarczajacej ilosci pieniedzy.");
				return PLUGIN_CONTINUE;
			}
			if(hp >= maksymalne_zdrowie_gracza[id])
			{
				ColorChat(id,GREEN,"[SilentShot.pl]^x01 Jestes w pelni uleczony.");
				return PLUGIN_CONTINUE;
			}
			cs_set_user_money(id, kasa_gracza-koszt);
			new ammount=100;
			new nowe_zdrowie = (hp+ammount<maksymalne_zdrowie_gracza[id])? hp+ammount: maksymalne_zdrowie_gracza[id];
			set_user_health(id, nowe_zdrowie);
			ColorChat(id,GREEN,"[SilentShot.pl]^x01 Kupiles^x03 Aspirine");
		}
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 03.04.2011

Przecież to jest wycinek z codmoda
Odpowiedz
Zablokowany