Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Odradzanie i nowa statystyka


  • Zamknięty Temat jest zamknięty
1 odpowiedź w tym temacie

#1 HardcoR AnGeL

    Zaawansowany

  • Użytkownik

Reputacja: 10
Początkujący

  • Postów:90
  • GG:
  • Imię:Jacek
  • Lokalizacja:Diablo Mod
Offline

Napisano 17.06.2011 21:40

Witam kiedys mi kolega robil diablo (FreZZy z forum) i wszystko spiep*****l. Klasa sie wogóle nie laduje itd itp. ale zrobil jedna funkcje i chce spytac sie czy mogla by ona dzialac czy jest dobrze zrobiona
Chodzi o to ze jak nekromanata kogos wskrzesi to ma do wyboru exp albo hp
oto kod:
public task_revive(taskid)
{
new id = taskid - TASKID_REVIVE

if(!is_user_alive(id))
{
failed_revive(id)
return FMRES_IGNORED
}

if(!(fm_get_user_button(id) & IN_USE))
{
failed_revive(id)
return FMRES_IGNORED
}

new body = find_dead_body(id)
if(!fm_is_valid_ent(body))
{
failed_revive(id)
return FMRES_IGNORED
}

new lucky_bastard = pev(body, pev_owner)
if(!is_user_connected(lucky_bastard))
{
failed_revive(id)
return FMRES_IGNORED
}

new lb_team = get_user_team(lucky_bastard)
if(lb_team != 1 && lb_team != 2)
{
failed_revive(id)
return FMRES_IGNORED
}

static Float:velocity[3]
pev(id, pev_velocity, velocity)
velocity[0] = 0.0
velocity[1] = 0.0
set_pev(id, pev_velocity, velocity)

new Float:gametime = get_gametime()
if(g_revive_delay[id] < gametime)
{
if(findemptyloc(body, 10.0))
{
fm_remove_entity(body)
emit_sound(id, CHAN_AUTO, SOUND_FINISHED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)

new args[2]
args[0]=lucky_bastard

if(get_user_team(id)!=get_user_team(lucky_bastard))
{
args[1]=1
nekrosidlo(id)
}
else
{
args[1]=0
Give_Xp(id,get_cvar_num("diablo_xpbonus"))
set_task(0.1, "task_respawn", TASKID_RESPAWN + lucky_bastard,args,2)
}

}
else
failed_revive(id)
}
else
set_task(0.1, "task_revive", TASKID_REVIVE + id)

return FMRES_IGNORED
}

public nekrosidlo(id)
{
new menu = menu_create("/rCo chcesz za wskrzeszenie wroga:", "nekro2");

menu_additem(menu, "\yEXP'a chce!")
menu_additem(menu, "\y Zycia, daj mi zycia!")
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public nekro2(id, menu, item)
{
switch(item)
{
case 0:
{
Give_Xp(id,get_cvar_num("diablo_xpbonus"))
}
case 1:
{
change_health(id,30,0,"")
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}


2. Mysalem o nowej statystyce dla Vipa. Wpdalem na nia grajac w Heroes III. Ze za 1 pkt tej statystyki co runde dostawaloby sie 2exp czy za 100 pkt 200 expa co runde. Daloby sie cos takiego zrobic?

Z Gory Dziekuje za Pomoc. Beda Plusy.
  • +
  • -
  • 0

#2 ^Grzyboo

    Wszechobecny

  • Użytkownik

Reputacja: 246
Wszechwidzący

  • Postów:461
  • Imię:Grzyboo
  • Lokalizacja:Tak
Offline

Napisano 18.06.2011 08:14

Co do jedynki to nie znam za bardzo struktury diablomoda, ale chyba jest ok.



A 2, Oczywiście dałoby się.

W

RoundStart


należałoby dodać

if(get_user_flags(i) & ADMIN_LEVEL_H) // Czy jaka tam flaga
Give_Xp(i, nowa_statystyka[i]*2)

  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych