Problem ze sprzedażą perku
1stADXionC
05.09.2015
Po sprzedaniu perku nie otrzymujemy złota
public sprzedaj_perk(id) { if(!is_user_alive(id) || !is_user_connected(id)) return PLUGIN_CONTINUE; new kasa = cod_get_user_zloto(id); new cena = get_pcvar_num(zloto_sell); if(cod_get_user_perk(id)) { if(kasa+cena) { cod_get_user_zloto(id); } ColorChat(id, GREEN, "^x04[COD:MW]^x01 Sprzedales swoj perk!"); cod_set_user_perk(id, 0, 0, 0); } else { ColorChat(id, GREEN, "^x04[COD:MW]^x01 Nie masz zadnego perku!"); } return PLUGIN_CONTINUE; }
Nie będę pisał drugie tematu, wiec napisze tutaj.
Czy jest możliwość aby za sprzedasz perku była losowana nagroda, tzn, od 0 do 1 zlota za sprzedaż.
xenos
05.09.2015
{
cod_get_user_zloto(id);
}
Ten fragment jest totalnie z 4 liter.
Po pierwsze warunek? po kij
po 2gie
cod_set_user_zloto(id, kasa+cena);
vanillah
05.09.2015
public sprzedaj_perk(id) { if(!is_user_alive(id) || !is_user_connected(id)) return PLUGIN_CONTINUE; new kasa = cod_get_user_zloto(id); new cena = get_pcvar_num(zloto_sell); if(cod_get_user_perk(id)) { if(kasa+cena) { new losowy = random_num(0, 1); cod_set_user_zloto(id, kasa+losowy); } ColorChat(id, GREEN, "^x04[COD:MW]^x01 Sprzedales swoj perk!"); cod_set_user_perk(id, 0, 0, 0); } else { ColorChat(id, GREEN, "^x04[COD:MW]^x01 Nie masz zadnego perku!"); } return PLUGIN_CONTINUE; }
coś takiego
Edited by Trikolos, 05.09.2015 16:05.
GoldenKill
10.09.2015
Spróbuj tego
public sprzedaj_perk(id) { if(!is_user_alive(id) || !is_user_connected(id)) return PLUGIN_CONTINUE; new cena = get_pcvar_num(zloto_sell); if(cod_get_user_perk(id)) { cod_set_user_perk(id, 0, 0, 0); cod_get_user_zloto(id + cena); ColorChat(id, GREEN, "^x04[COD:MW]^x01 Sprzedales swoj perk!"); } else { ColorChat(id, GREEN, "^x04[COD:MW]^x01 Nie masz zadnego perku!"); } return PLUGIN_CONTINUE; }
1stADXionC
10.09.2015
L 09/10/2015 - 14:50:52: Invalid CVAR pointerL 09/10/2015 - 14:50:52: [AMXX] Displaying debug trace (plugin "cod_zloto.amxx") L 09/10/2015 - 14:50:52: [AMXX] Run time error 10: native error (native "get_pcvar_num") L 09/10/2015 - 14:50:52: [AMXX] [0] cod_zloto.sma::sprzedaj_perk (line 147) L 09/10/2015 - 14:50:52: [AMXX] [1] cod_zloto.sma::targowisko_handle (line
Attached Files
GoldenKill
10.09.2015
Źle zrobiłeś cvar, usunąłem ci go całkowicie i w tej linijce zmieniasz wartość złota, jaką dostajemy
new cena = 5;
Attached Files
1stADXionC
10.09.2015
hm, teraz za sprzedaż perka nie otrzymujemy złota, moze to być spowodowane losowaniem?
Linux'
10.09.2015
1. Jaki jest sens pobierania natywow w pluginie ktory go tworzy?
2. Jaki jest sens by mozna bylo sprzedawac przedmiot tylko gdy sie zyje?
3. Jaki jest sens wczytywania zlota przy podloczeniu gracza oraz autoryzacji?
4. Jaki jest sens tworzenia nowej zmiennej "cena", jezeli jej wartosc mialby byc pobierana tylko w jednym miejscu?
Widze same bystrzaki w tym temacie haha . Sprawdz.
Attached Files
1stADXionC
10.09.2015
Czyli kod będzie wyglądał tak:
public sprzedaj_perk(id) { if(!is_user_connected(id)) return PLUGIN_CONTINUE; if(cod_get_user_perk(id)) { if(random_num(1,2) == 1) { cod_set_user_perk(id, 0, 0, 0); zloto[id] += 5; ColorChat(id, GREEN, "^x04[COD:MW]^x01 Sprzedales swoj perk!"); } else { cod_set_user_perk(id, 0, 0, 0); ColorChat(id, GREEN, "^x04[COD:MW]^x01 Sprzedales swoj perk!"); } } else { ColorChat(id, GREEN, "^x04[COD:MW3]^x01 Nie masz zadnego perku!"); } return PLUGIN_CONTINUE; }
Linux'
16.09.2015
Czyli kod będzie wyglądał tak:
public sprzedaj_perk(id) { if(!is_user_connected(id)) return PLUGIN_CONTINUE; if(cod_get_user_perk(id)) { if(random_num(1,2) == 1) { cod_set_user_perk(id, 0, 0, 0); zloto[id] += 5; ColorChat(id, GREEN, "^x04[COD:MW]^x01 Sprzedales swoj perk!"); } else { cod_set_user_perk(id, 0, 0, 0); ColorChat(id, GREEN, "^x04[COD:MW]^x01 Sprzedales swoj perk!"); } } else { ColorChat(id, GREEN, "^x04[COD:MW3]^x01 Nie masz zadnego perku!"); } return PLUGIN_CONTINUE; }
Nie ma sensu wykonywania dwa razy tych samych funkcji dla roznych opcji
if(cod_get_user_perk(id)) { if(random_num(1,2) == 1) zloto[id] += 5; cod_set_user_perk(id, 0, 0, 0); ColorChat(id, GREEN, "^x04[COD:MW]^x01 Sprzedales swoj perk!"); } else { ColorChat(id, GREEN, "^x04[COD:MW3]^x01 Nie masz zadnego perku!"); }