←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] False w nowej rundzie nie dzi...


Najlepsza odpowiedź Misiaczek ;c 22.04.2013 10:52

new gMaxPlayers;

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	gMaxPlayers = get_maxplayers();
}

public Round_Start(){
	for(new id = 1 ; id <= gMaxPlayers ; id++) {
		client_print(id, print_chat, "aaaa")
		ma_ammo[id] = false
	}
}
Przejdź do postu
Zablokowany

  • +
  • -
Equilibrium - zdjęcie Equilibrium 20.04.2013

Otóż mam funkcję w sklepiku. Dałem tam ma_ammo[id] = true. W roundstart dałem ma_ammo[id] = false. Tylko, że jak kupie itemek w sklepiku na nieskonczoność amunicji w następnej rundzie też mam :/ A funkcja na dawanie nieskonczoności amunicji ma postać:
public CurWeapon(id){
	new killer = read_data(1);
	new weapon = get_user_weapon(killer);
	if(ma_ammo[id] == true)
			{
				if(maxClip[weapon] != -1){
					set_user_clip(1, maxClip[weapon]);
				}
			}
}
Proszę o pomoc.
Odpowiedz

Gość_21977_* 21.04.2013

new killer = read_data(1);

Event CurWeapon nie przyjmuje wartości em.. zabójcy.
Odpowiedz

  • +
  • -
Equilibrium - zdjęcie Equilibrium 22.04.2013

public CurWeapon(id){
	if(ma_ammo[id] == true)
		{
			set_user_clip(id, 1);
		}
}
Poprawione ale mi chodzi o to aby podczas kupienia itemku nieskonczonosc amunicji w sklepie był tylko na 1 rundę. Myślałem aby dać
else
             (komenda/funkcja ktora ustawia ammo standardowe)
Ale niestety nie znam takowej. Bo
public Round_Start(id){
	client_print(id, print_chat, "aaaa")
	ma_ammo[id] = false
}
to mi nie działa ale dla sprawdzenia dalem print i pokazuje mi "aaaa". Także nie wiem czemu nie chce działać:/ Może przy itemku jakies return value trzeba? Aby true był wysłany tylko raz a nie ciągle?
Odpowiedz

  • +
  • -
GwynBleidD - zdjęcie GwynBleidD 22.04.2013

Round_Start jest wywoływany dla serwera, nie dla każdego klienta osobno. Musisz przelecieć się w pętli po wszystkich graczach, albo użyć np eventu client spawn.

Odpowiedz

  • +
  • -
Najlepsza odpowiedź Misiaczek ;c - zdjęcie Misiaczek ;c 22.04.2013

new gMaxPlayers;

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	gMaxPlayers = get_maxplayers();
}

public Round_Start(){
	for(new id = 1 ; id <= gMaxPlayers ; id++) {
		client_print(id, print_chat, "aaaa")
		ma_ammo[id] = false
	}
}
Odpowiedz

  • +
  • -
Equilibrium - zdjęcie Equilibrium 22.04.2013

Dobra, dziękuję bardzo za pomoc. Oczywiście należne + poszły :D Temat do zamknięcia.
Odpowiedz
Zablokowany