←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

rounstart - no reason

Locked

  • +
  • -
KariiO's Photo KariiO 19.04.2011

Witam mój roundstart nie chcę działać...tzn. nic nie robi nie ustawia zmiennych wogóle. no reason ;P On:
public RoundStart()
{
	for (new i=0; i < 33; i++)
	{
	
		mocex(i)
		
		if(player_b_resp[i] > 0 && random_num(1,player_b_resp[i]) == 1)
		{
			new CsTeams:team=cs_get_user_team(i)        
			
			if(team==CS_TEAM_CT)
				cs_set_user_team(i,CS_TEAM_T,CS_DONTCHANGE)
			if(team==CS_TEAM_T)
				cs_set_user_team(i,CS_TEAM_CT,CS_DONTCHANGE)
			
			ExecuteHam(Ham_Spawn,i)
			cs_set_user_team(i,team,CS_DONTCHANGE)
		}

		used_item[i] = false
		DemageTake1[i]=1
		count_jumps(i)
		runda[i]++
		if (terundy[i]>5) dodatkamocvampira[i]=0
		if (dodatkamocvampira[i]>0) terundy[i]++
		boss[i] = 0
		give_knife(i)
		
		if(player_class[i] == Templariusz) mocetemplariusza(i)
		if(player_class[i] == Elf) player_b_przyciaganie[i]=14
		if(player_class[i] == Zielarz) g_haskit[i]=1
		else g_haskit[i]=0
		
		if(player_class[i] == Vampir || runda[i]<5 || dodatkamocvampira[i]>0)
		{
			new m_health = race_heal[player_class[i]]+25+player_strength[i]*2
			set_user_health(i,m_health)
		}
		
		if(odlamekszmaragdu[i])
		{
			new iloscodl = odlamekszmaragdu[i]
			szmaragdy[i]+=iloscodl
		}
		
		
		if(player_lvl[i]==101 || player_lvl[i]==201 || player_lvl[i]==301 || player_lvl[i]==401) 
		{
			client_print(i, print_center, "Jezeli masz 401 LVL mozesz go zresetowac komende /res lub res.Dostaniesz wtedy 500 szmaragdow a Twoj LVL bd. rowny 1")
		}
		
		
		uzylem[i] = 0
		
		golden_bulet[i]=0
		
		invisible_cast[i]=0
		JumpsLeft[i]=JumpsMax[i]
		losowe_itemy[i] = 0
		
		///////////////////////////////////BOSS EVENT//////////////////
		new mapname[32] 
		get_mapname(mapname, 31)
		if(equali(mapname, "de_dust2"))
		{
			if (random_num(1,25)==1)
			{
				losowanie()
				client_print(i, print_center, "BOSS EVENT ROZPOCZETY!") 
			}
		}
		
		if(equali(mapname, "de_dust2_long"))
		{
			if (random_num(1,25)==1)
			{
				losowanie()
				client_print(i, print_center, "BOSS EVENT ROZPOCZETY!") 
			}
		}
		/////////////////////////////////////////////////////////////
		
		if (runda[i] > 1)
		{
			if (ZloteZabicia[mpx][i] > 800) cs_set_user_money(i,cs_get_user_money(i)+500)
		}
		
		ultra_armor[i]=0
		num_shild[i]=2+floatround(player_intelligence[i]/25.0,floatround_floor)
		
		set_renderchange(i)
		if(is_user_connected(i)&&player_item_id[i]==66)
		{
			changeskin(i,0) 
		}
	}
	
	kill_all_entity("throwing_knife")
	
	Bot_Setup()		
	ghost_check = false
	check_class()
	use_addtofullpack = false
}

////////////////////////////////TEMPLARIUSZ///////////////////////////////
public mocex(id)
{
	dodatkoweleczeniezielarza[id]=30
	dodatkoweodbijanierycerza[id]=7
	dodatkamocpustelnika[id]=5
	dodatkamocstraznika[id]=3
	dodatkamocasasyna[id]=0
	dodatkamocbandyty[id]=500
	dodatkamoctemplariusza[id]=3
	dodatkamockaplana[id]=1
}
	
public mocetemplariusza(id)
{
	if(player_class[id] != Templariusz) return PLUGIN_HANDLED;
	
	if (random_num(1,2) == 1)
	{
		changeskin(id,0)
		ColorChat(id, TEAM_COLOR, "Wygladasz jak przeciwnik!")
	}
	else changeskin(id,1)
	
	reload_bow[id] = 1
	return PLUGIN_CONTINUE;
}

Edit1
Dodam jeszcze że jeżeli dodam return PLUGIN_CONTINUE; przed ostatnią klamrą w roundstarcie nic się i tak nie dzieje.
Edited by KariiO, 21.04.2011 17:39.
Quote

  • +
  • -
DarkGL's Photo DarkGL 03.05.2011

for (new i=0; i < 33; i++)
na
for (new i=1; i < 33; i++)

dodaj jeszcze
if(!is_user_connected(i)){
continue;
}
(po for (new i=1; i < 33; i++) {)
moze jakies logi ?
Quote

  • +
  • -
KariiO's Photo KariiO 03.05.2011

+ Zaraz sprawdzę.


W logach jedynie:
L 05/03/2011 - 16:03:47: [AMXX] Displaying debug trace (plugin "admin_money.amxx")
L 05/03/2011 - 16:03:47: [AMXX] Run time error 10: native error (native "set_user_health")
L 05/03/2011 - 16:03:47: [AMXX]    [0] admin_money.sma::RoundStart (line 1427)

Linia:
set_user_health(i,m_health)

Więc pewnie chodzi o to:
if(player_class[i] == Vampir || runda[i]<5 || dodatkamocvampira[i]>0)
		{
			new m_health = race_heal[player_class[i]]+25+player_strength[i]*2
			set_user_health(i,m_health) //tu to jest <img src='http://img.amxx.pl/public/style_emoticons/<#EMO_DIR#>/biggrin.gif' class='bbc_emoticon' alt=':D' />
		}
Quote

  • +
  • -
DarkGL's Photo DarkGL 03.05.2011

jesli chcesz zmieniac graczowi hp armor itp. dawac bron to gracz musi byc zywy
problem w tym ze tutaj miksujesz rzeczy globalny warunek nie przejdzie bo beda problemy
daj
if(is_user_alive(i)){
new m_health = race_heal[player_class[i]]+25+player_strength[i]*2
set_user_health(i,m_health)
}
Quote

  • +
  • -
KariiO's Photo KariiO 03.05.2011

To może dać na całe ?
Od góry:
if(is_user_alive(i)){
i na dole zakończyć klamrą.
Uszło by?
Quote

  • +
  • -
DarkGL's Photo DarkGL 03.05.2011

problem w tym ze tutaj miksujesz rzeczy globalny warunek nie przejdzie bo beda problemy

no ale zobacz moze nie bedzie problemów
Quote

  • +
  • -
KariiO's Photo KariiO 04.05.2011

Dobra działa dzięki +
Można zamknąć.
Quote
Locked