←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

HP poraz 1000 tylko że troche inny problem

Zablokowany

  • +
  • -
Janko - zdjęcie Janko 02.05.2011

Witam, przeszukałem to forum i nie znalazłem odp na nurtujące mnie pytanie.

Chodzi o to że na diablo w którym podniosłem max lvl i jest więcej skilla do rozdania. No i kiedy ktoś da 100sily to na starcie rundy ma 255hp i tu po lewej na dole i na górze w liczniku od dibalo i proszę nie mówcie że rzeczywiście ma się więcej bo sie nie ma i jest tylko 255hp sprawdzałem to... wiecie która część kodu może mi to blokować? że tylko 255? bo jak ktoś postawi totem to hp wzrasta normalnie
Odpowiedz

  • +
  • -
ogieR8 - zdjęcie ogieR8 02.05.2011

Co Ty pier*dolisz ?. To tylko maksymalnie wyświetlana ilość HP jaka była przewidywana w HL-fie. HP masz ile chcesz. Najlepiej to dodaj sobie do public write_hud obok klasy ilość HP..

Pozdrawiam
~ 0g!eR
Odpowiedz

  • +
  • -
Janko - zdjęcie Janko 02.05.2011

{
set_hudmessage(0, 255, 0, 0.03, 0.20, 0, 6.0, 1.0)
show_hudmessage(id, "[Zycie: %i]^n[Klasa: %s]^n[Poziom: %i (%0.0f%s)]^n[Przedmiot: %s]^n[Wytrzymalosc: %i]^n[Zloto: %i]",get_user_health(id), Race[player_class[id]], player_lvl[id], perc,"%%", player_item_name[id],item_durability[id],zloto_gracza[id])
}
else
{
set_hudmessage(0, 255, 0, 0.03, 0.20, 0, 6.0, 1.0)
show_hudmessage(id, "[Zycie: %i]^n[Klasa: %s]^n[Poziom: %i (%0.0f%s)]^n[Skoki: %i/%i]^n[Przedmiot: %s]^n[Wytrzymalosc: %i]^n[Zloto %i]",get_user_health(id), Race[player_class[id]], player_lvl[id], perc,"%%",JumpsLeft[id],JumpsMax[id], player_item_name[id], item_durability[id],zloto_gracza[id])
}



Mam tak i dalej jest 255na start... tu i tu jak slapne gościa za 256 to pada skoro jest tak jak mówisz powiedz dlaczego? mimo że ma 200siły czyli kolo 550hp
Odpowiedz

  • +
  • -
ogieR8 - zdjęcie ogieR8 02.05.2011

Pokaż mi Twoje rozdzelenia statystyk

Spoiler


Może masz tam jakiś warunek (np. if), że działa tylko do 255 czy coś.

Pozdrawiam
~ 0g!eR

Użytkownik ogieR- edytował ten post 02.05.2011 10:18
Odpowiedz

  • +
  • -
Janko - zdjęcie Janko 02.05.2011

public skilltree(id)
{
new text[513]
new keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)


format(text, 512, "\yWybierz Staty- \rPunkty: %i^n^n\w1. Inteligencja [%i] [Wieksze obrazenia czarami]^n\w2. Sila [%i] [Wiecej zycia]^n\w3. Zrecznosc [%i] [Bronie zadaja ci mniejsze obrazenia]^n\w4. Zwinnosc [%i] [Szybciej biegasz i magia zadaje ci mniejsze obrazenia]^n\w5. Wszystko w Inteligencje ^n\w6. Wszystko w sile ^n\w7. Wszystko w zrecznosc ^n\w8. Wszystko w zwinosc",player_point[id],player_intelligence[id],player_strength[id],player_agility[id],player_dextery[id])

keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)
show_menu(id, keys, text)
return PLUGIN_HANDLED
}


public skill_menu(id, key)
{
new max_skill=500
switch(key)
{
case 0:
{
if (player_intelligence[id]<500){
player_point[id]-=2
player_intelligence[id]+=2
}
else client_print(id,print_center,"Maxymalny poziom inteligencji osiagniety")

}
case 1:
{
if (player_strength[id]<500){
player_point[id]-=2
player_strength[id]+=2
}
else client_print(id,print_center,"Maxymalny poziom sily osiagniety")
}
case 2:
{
if (player_agility[id]<500){
player_point[id]-=2
player_agility[id]+=2
player_damreduction[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(player_agility[id])))/100)
}
else client_print(id,print_center,"Maxymalny poziom zrecznosci osiagniety")

}
case 3:
{
if (player_dextery[id]<500){
player_point[id]-=2
player_dextery[id]+=2
set_speedchange(id)
}
else client_print(id,print_center,"Maxymalny poziom zwinnosci osiagniety")
}
case 4:
{
if (player_point[id]+player_intelligence[id] <= 500)
{
player_intelligence[id]+=player_point[id]
player_point[id]=0
}
else
{
player_point[id]-=max_skill-player_intelligence[id]
player_intelligence[id]=max_skill
client_print(id,print_center,"Maxymalny poziom inteligencji osiagniety")
}
}
case 5:
{
if (player_point[id]+player_strength[id] <= 500)
{
player_strength[id]+=player_point[id]
player_point[id]=0
}
else
{
player_point[id]-=max_skill-player_strength[id]
player_strength[id]=max_skill
client_print(id,print_center,"Maxymalny poziom sily osiagniety")
}
}
case 6:
{
if (player_point[id]+player_agility[id]<500)
{
player_agility[id]+=player_point[id]
player_point[id]=0
}
else
{
player_point[id]-=max_skill-player_agility[id]
player_agility[id]=max_skill
client_print(id,print_center,"Maxymalny poziom zrecznosci osiagniety")
}
player_damreduction[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(player_agility[id])))/100)

}
case 7:
{
if (player_point[id]+player_dextery[id]<500)
{
player_dextery[id]+=player_point[id]
player_point[id]=0
}
else
{
player_point[id]-=max_skill-player_dextery[id]
player_dextery[id]=max_skill
client_print(id,print_center,"Maxymalny poziom zwinnosci osiagniety")
}
set_speedchange(id)
}
}

if (player_point[id] > 0)
skilltree(id)


return PLUGIN_HANDLED
}
Odpowiedz

  • +
  • -
ogieR8 - zdjęcie ogieR8 02.05.2011

Nie widzę tutaj żadnego warunku na ograniczenie :| Ale mam pytanie .. Po co robisz nową zmienną, jak z niej nie korzytasz, zamień na to :

Spoiler


Wątpię, że to rozwiąże problem, ale dobrze będzie jak użyjesz mojej 'poprawki'. Może akurat zadziała ^^ Chodź wątpię :/
Odpowiedz

  • +
  • -
Janko - zdjęcie Janko 02.05.2011

Najlepsze jest to że w kodzie nie ma niczego co może wskazywać na to że na start ma być 255hp bo nie ma nigdzie 255 tylko w kolorze :/
Odpowiedz

  • +
  • -
Divic - zdjęcie Divic 02.05.2011

omg przecież ci ogier pisze ze to jest OGRANICZENIE GRY

Zacznij klasa z 1 lvl na pewno będziesz miał mniej niż 255 hp, To ograniczenie gry a nie diablo więcej ci wyświetlać nie bedzie
Odpowiedz

  • +
  • -
Janko - zdjęcie Janko 02.05.2011

Ograniczenie gry powiadasz? To czemu na innych serwerach jakoś można zacząć od więcej?
Odpowiedz

  • +
  • -
DarkGL - zdjęcie DarkGL 02.05.2011

chodzi o to ze nie wyswietla w hud wiecej niz 255 ? czy po prostu wiecej niz 255 hp nie mozesz miec nawet jak dodajesz ?
jesli pierwsze to jest to ograniczenie gry
jesli drugie daj sma :)
Odpowiedz

  • +
  • -
Janko - zdjęcie Janko 02.05.2011

Nie obchodzi mnie napis csowy czyli tam gdzie zawsze jest 100hp bo to wiem ze jest na full 255.


Chodzi mi o licznik od diablo i ogólnie bo jest 255 po respie w każdej rundzie a powinno być więcej.


Sma nie mogę dać bo jest za dużo przerobione żeby tak teraz na publika rozdać mogę dawać różne części ale nie całego.
Odpowiedz

Jagoda - zdjęcie Jagoda 03.05.2011

pokaz funkcje
public task_setplayer(args[])
Odpowiedz

  • +
  • -
Janko - zdjęcie Janko 03.05.2011

public task_setplayer(args[])
{
new id = args[0]

fm_give_item(id, "weapon_knife")

if(args[1]==1)
{
fm_give_item(id, "weapon_mp5navy")
change_health(id,9999,0,"")
set_user_godmode(id, 1)

new newarg[1]
newarg[0]=id

set_task(3.0,"god_off",id+95123,newarg,1)
}
else
{
fm_set_user_health(id, get_pcvar_num(cvar_revival_health)+player_intelligence[args[2]])

Display_Fade(id,seconds(2),seconds(2),0,0,0,0,255)
}

if(player_item_id[id]==17) fm_set_user_health(id,5)
}

Użytkownik Janko edytował ten post 03.05.2011 11:51
Odpowiedz

  • +
  • -
DarkGL - zdjęcie DarkGL 03.05.2011

pokaz wszystkie wystapienia uzycia funkcji task_setplayer a takze usuwania taska /zmieniania jego czasu
jesli nie potrafisz tego zrobic no to radz sobie sam bo nie chcesz dac sma
Odpowiedz

  • +
  • -
Janko - zdjęcie Janko 03.05.2011

public task_stuck_check(args[])
{
new id = args[0]

static Float:origin[3]
pev(id, pev_origin, origin)

if(origin[2] == pev(id, pev_zorigin))
set_task(0.1, "task_respawn", TASKID_RESPAWN + id,args,3)
else
set_task(0.1, "task_setplayer", TASKID_SETUSER + id,args,3)
}


public task_setplayer(args[])
{
new id = args[0]

fm_give_item(id, "weapon_knife")

if(args[1]==1)
{
fm_give_item(id, "weapon_mp5navy")
change_health(id,9999,0,"")
set_user_godmode(id, 1)

new newarg[1]
newarg[0]=id

set_task(3.0,"god_off",id+95123,newarg,1)
}
else
{
fm_set_user_health(id, get_pcvar_num(cvar_revival_health)+player_intelligence[args[2]])

Display_Fade(id,seconds(2),seconds(2),0,0,0,0,255)
}

if(player_item_id[id]==17) fm_set_user_health(id,5)
}


Usuwanie taska występuje w wielu miejscach a zmiany nie ma nigdzie które konkretnie miejsce ci podać?
Odpowiedz

  • +
  • -
DarkGL - zdjęcie DarkGL 03.05.2011

podeslij te glupie sma na pw chyba ze sie znów boisz ze cie okradnę to sam naprawiaj
Odpowiedz

  • +
  • -
Janko - zdjęcie Janko 03.05.2011

Rozwiązane można zamknąć
Odpowiedz
Zablokowany