←  Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

Modyfikacja
Mała modyfikacja BF2

albino - zdjęcie albino 22.03.2012

Witam, przerobiam sobie bf2 32 odznaki by misieq i przy odznece z broni szturmowej chcę żeby na profesjonaliście zamiast 140 hp było 130 + darmowy ak47/m4
Więc zrobiłem tak:


new assaultlevel = g_PlayerBadges[id][BADGE_ASSAULT];
if ( assaultlevel )
{
new hp;
hp = 100 + (assaultlevel*10);

if (assaultlevel==4)
{
hp = 130;

if(cs_get_user_team(id) == CS_TEAM_T)
{
fm_give_item(id, "weapon_ak47");
}
else
{
fm_give_item(id, "weapon_m4a1");
}
}

if ( get_user_health(id) < hp )
{
set_user_health(id, hp);

if ( pev(id, pev_max_health) < float(hp) )
{
set_pev(id, pev_max_health, float(hp));
}

givenitem = true;
}
}


I działa pięknie tylko chciałbym żeby dawało ak/m4 od drugiej rundy. Jaki warunek postawić? if (round > 1) nie działa ;)
Użytkownik albino edytował ten post 22.03.2012 22:36
Odpowiedz

creepMP3 - zdjęcie creepMP3 23.03.2012

new assaultlevel = g_PlayerBadges[id][BADGE_ASSAULT];
if ( assaultlevel )
{
  new hp;
  hp = 100 + (assaultlevel*10);
  if (assaultlevel==4)
  {
   hp = 130;
   if(round > 1)
   {										   
	    if(cs_get_user_team(id) == CS_TEAM_T)
	    {
	    fm_give_item(id, "weapon_ak47");
		   }
		  else
	    {
	    fm_give_item(id, "weapon_m4a1");
	    }
  }
}
  if ( get_user_health(id) < hp )
  {
  set_user_health(id, hp);
 
  if ( pev(id, pev_max_health) < float(hp) )
  {
   set_pev(id, pev_max_health, float(hp));
  }
 
  givenitem = true;
  }
}

Sprawdź powinno działać.
Odpowiedz

albino - zdjęcie albino 23.03.2012

if (round > 1) nie działa


Tyle to sam wydumałem, nieznany obiekt round kompilator wywala ;) Chyba żeby zadeklarowac to bf2rank.sma ale czy bedzie wiedziało co to jest? :crazy:
Użytkownik albino edytował ten post 23.03.2012 22:54
Odpowiedz

  • +
  • -
kapi10072 - zdjęcie kapi10072 24.03.2012

Do bf2rank.sma dodaj:
nową zmienną typu bool, czyli

new bool:round;

w public plugin_init

register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");

Potem gdzieś na dole funkcja

public NowaRunda()
{
round = true
}

Następnie stawiasz warunek taki tam gdzie chciałeś wstawić : if (round > 1)
zmieniasz na ten

if (round == true)

Użytkownik kapi10072 edytował ten post 24.03.2012 22:19
Odpowiedz