Pobieranie wartosci cvaru przy zmiennej
Filip1512
22.09.2012
Czesć,
w wolnym czasie piszę i uzupełniam sobie mój własny plugin (coś w stylu ruletki, lecz pisane od 0 i inaczej działa), ale do rzeczy.
Chciałałem do nowej zmiennej zadeklarować wartość z cvaru, a później tą zmienną użyć w colorchat.
Dokładniej to wygląda tak:
Na samej górze zadeklarowałem zmienną (linijka 17)
A w colorchacie
Lecz przy kompilacji wyskakuje mi błąd
w wolnym czasie piszę i uzupełniam sobie mój własny plugin (coś w stylu ruletki, lecz pisane od 0 i inaczej działa), ale do rzeczy.
Chciałałem do nowej zmiennej zadeklarować wartość z cvaru, a później tą zmienną użyć w colorchat.
Dokładniej to wygląda tak:
Na samej górze zadeklarowałem zmienną (linijka 17)
new malo_kasy = get_cvar_num("kasa_bonus");
A w colorchacie
ColorChat(id, YELLOW, "Potrzebujesz %d$, aby moc skorzystac z bonusu!", malo_kasy)
Lecz przy kompilacji wyskakuje mi błąd
Error: Must be a constant expression; assumed zero on line 17
Raen
22.09.2012
masz cvary czy pcvary?
jeśli pcvary to zamień na
jeśli pcvary to zamień na
new malo_kasy = get_pcvar_num("kasa_bonus");
dasiek
22.09.2012
Przykłądowo takowy public się kompiluje.
Moje pytanie brzmi - gdzie masz new malo_kasy a gdzie Wypisywanie?
public write(id) { new malo_kasy = get_cvar_num("kasa_bonus"); ColorChat(id, NORMAL, "Potrzebujesz %d $, aby moc skorzystac z bonusu!", malo_kasy) }
Moje pytanie brzmi - gdzie masz new malo_kasy a gdzie Wypisywanie?
Filip1512
22.09.2012
Cvary, bo nie wiem jak działają pcvary (nigdzie nie mogłem znaleść opisu czy czegoś, a podobno pcvary są szybsze...)
CheQ, poczekaj, wkleje całe SMA
Oczywiśćie najpierw malo_kasy wypisałem nad colorchatem, ale wtedy mi wyskakują takie błędy:
Użytkownik `NN edytował ten post 22.09.2012 12:58
register_cvar("kasa_bonus", "16000")
CheQ, poczekaj, wkleje całe SMA
Spoiler
Oczywiśćie najpierw malo_kasy wypisałem nad colorchatem, ale wtedy mi wyskakują takie błędy:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team
Error: Declaration of a local variable must appear in a compound block on line 106
Error: Undefined symbol "malo_kasy" on line 106
Warning: Loose indentation on line 107
Error: Undefined symbol "malo_kasy" on line 107
3 Errors.
Użytkownik `NN edytował ten post 22.09.2012 12:58
dasiek
22.09.2012
#include <amxmodx> #include <amxmisc> #include <fakemeta_util> #include <colorchat> #include <fun> #include <cstrike> #define PLUGIN "Bonus za kase by Filip" #define VERSION "1.0" #define AUTHOR "Filip / `NN" new bool:freeze[33]; new bool:bActive; new bool:speed150[33]; new malo_kasy; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("CurWeapon","speed150a","be", "1=1") register_logevent("PoczatekRundy", 2, "1=Round_Start"); // poczatek rundy register_logevent("round_end", 2, "1=Round_End") // koniec rundy register_clcmd("say /bonus", "bonus") register_cvar("kasa_bonus", "16000") register_cvar("czas_bonus", "60") malo_kasy = get_cvar_num("kasa_bonus"); } // tu sie zaczyna sprawdzanie, komenda moze byc uzyta tylko przez okreslony w cvarze czas public PoczatekRundy(){ bActive = true; set_task(float(get_cvar_num("czas_bonus")), "end", 322); } public end(){ bActive = false; for(new i; i<=32; i++) { if(is_user_connected(i)) { freeze[i] = false; speed150[i] = false; } } } public round_end(){ remove_task(322); // jesli runda bedzie trwala mniej niz podany czas, moze byc problem, wiec trzeba usunac taska } // koniec sprawdzania public bonus(id){ if(bActive){ if(cs_get_user_money(id)>=get_cvar_num("kasa_bonus")) { new los los = random_num(0,5) switch(los){ case 0: { ColorChat(id, RED, "Nie masz ani kasy, ani bonusu i wolno biegasz") cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1) set_user_maxspeed(id, 150.0) speed150[id] = true; } case 1: { ColorChat(id, GREEN, "Wygrywasz flare i mniejsza grawitacje!") cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1) set_user_gravity(id, 0.5) give_item(id, "weapon_smokegrenade") } case 2: { ColorChat(id, GREEN, "Wygrywasz MP5!") cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1) give_item(id, "weapon_mp5navy") give_item(id, "ammo_9mm") } case 3: { ColorChat(id, GREEN, "Wygrywasz Scouta!") cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1) give_item(id, "weapon_scout") give_item(id, "ammo_762nato") } case 4: { ColorChat(id, RED, "Nie mozesz sie ruszac przez 5 sekund!") cs_set_user_money(id, (cs_get_user_money(id)-get_cvar_num("kasa_bonus")), 1) freeze[id] = true set_task(5.0, "zamrozenie", id) } case 5: { ColorChat(id, BLUE, "Nie masz ani kasy, ani bonusu - Nic sie nie dzieje!") cs_set_user_money(id, 0, 1) } } } else if(cs_get_user_money(id)<get_cvar_num("kasa_bonus")) ColorChat(id, YELLOW, "Potrzebujesz %d$, aby moc skorzystac z bonusu!", malo_kasy) } else ColorChat(id, RED, "Za pozno, sprobuj w nastepnej rundzie <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/smile.png' class='bbc_emoticon' alt=':)' />") } public speed150a(id){ if(speed150[id] == true) { set_user_maxspeed(id, 150.0) } } public CurWeapon(id){ if(!is_user_alive(id)){ return PLUGIN_CONTINUE; } if(freeze[id] == true){ set_user_maxspeed(id, 0.1); } return PLUGIN_CONTINUE; } public zamrozenie(id){ set_user_maxspeed(id); }
Filip1512
22.09.2012
Ok działa, dzięki (wiem co zmieniłeś, żeby nie było)
Teraz kolejne pytania, skoro sma jest już wyżej podane.
////edit
STWORZYŁEM NOWY TEMAT ( http://amxx.pl/topic...funkcja-freeze/ ), TEN MOŻNA ZAMKNĄĆ
Użytkownik `NN edytował ten post 22.09.2012 13:41
Teraz kolejne pytania, skoro sma jest już wyżej podane.
Spoiler
////edit
STWORZYŁEM NOWY TEMAT ( http://amxx.pl/topic...funkcja-freeze/ ), TEN MOŻNA ZAMKNĄĆ
Użytkownik `NN edytował ten post 22.09.2012 13:41