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
Inny

Pokemod. Error z Mega_Drain i check.inl

inny

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
Brak odpowiedzi do tego tematu

#1 Artemis

    Zaawansowany

  • Użytkownik

Reputacja: 9
Nowy

  • Postów:91
  • GG:
  • Imię:Piotr
  • Lokalizacja:Sanok
Offline

Napisano 23.02.2014 17:59

W logach występują takie errory:
L 02/23/2014 - 06:50:20: Start of error session.
L 02/23/2014 - 06:50:20: Info (map "de_chateau") (file "addons/amxmodx/logs/error_20140223.log")
L 02/23/2014 - 06:50:20: [amxx] Displaying debug trace (plugin "pokemod.amxx")
L 02/23/2014 - 06:50:20: [amxx] Run time error 10: native error (native "clamp")
L 02/23/2014 - 06:50:20: [amxx]    [0] grass.inl::Mega_Drain (line 225)
L 02/23/2014 - 06:50:20: [amxx]    [1] checks.inl::SkillPercent (line 355)
L 02/23/2014 - 06:50:20: [amxx]    [2] checks.inl::SkillClamp (line 360)
L 02/23/2014 - 06:50:20: [amxx]    [3] grass.inl::Mega_Drain (line 224)
 
Skill Mega_Drain z podkreślonymi linijkami 225 i 224:
 

 public Mega_Drain(id, skill, prop)
 {
new weapon, victim = PokeSkillTarget(id, _, weapon);
if( !ValidPlayer(victim) || !Pokemod_Alive(victim) || knife_weapon(weapon) || grenade_weapon(weapon) )
return SKILL_READY;
new vweapon = get_user_weapon(victim);
if( knife_weapon(vweapon) || grenade_weapon(vweapon) )
return SKILL_READY;
 
if( SkillChance(id,skill) ){
 
new wpn[32], ammo;
new vwpn[32], vammo;
get_user_weapon(id, ammo);
get_weaponname(weapon,wpn,31);
get_user_weapon(victim, vammo);
get_weaponname(vweapon,vwpn,31);
 
#if MOD==DOD
ammo = dod_get_user_ammo(id, weapon);
vammo = dod_get_user_ammo(victim, vweapon);
#endif
 
//this makes top level drain half ammo
new drainlow = (vammo*MEGA_DRAIN_LOW)/100;
//and bottom level drain full ammo
new drainhigh = (vammo*MEGA_DRAIN_HIGH)/100;
-------------------------------------------------------------------------------------224 i 225
new drain = SkillClamp(id, skill, drainlow, drainhigh);
new newvammo = clamp( vammo-drain, 0, vammo );
-------------------------------------------------------------------------------------------------------
#if MOD==CS
new iWPNidx = -1;
while( (iWPNidx = fm_find_ent_by_class(iWPNidx, wpn)) ){
if( id == pev(iWPNidx, pev_owner) ){
cs_set_weapon_ammo(iWPNidx, ammo+drain);
}
}
iWPNidx = -1;
while( (iWPNidx = fm_find_ent_by_class(iWPNidx, vwpn)) ){
if( victim == pev(iWPNidx, pev_owner) ){
cs_set_weapon_ammo(iWPNidx, newvammo);
}
}
#endif
#if MOD==DOD
dod_set_user_ammo(id, weapon, ammo+drain);
dod_set_user_ammo(victim, vweapon, newvammo);
#endif
#if MOD==NS
new iWPNidx = -1;
while( (iWPNidx = fm_find_ent_by_class(iWPNidx, wpn)) ){
if( id == pev(iWPNidx, pev_owner) ){
ns_set_weap_clip(iWPNidx, ammo+drain);
}
}
iWPNidx = -1;
while( (iWPNidx = fm_find_ent_by_class(iWPNidx, vwpn)) ){
if( victim == pev(iWPNidx, pev_owner) ){
ns_set_weap_clip(iWPNidx, newvammo);
}
}
#endif
 
sound_hit(id);
sound_hit(victim);
MakeLine_Ent(0,id,victim,SPRITE_INDEX[SPR_XPLODE],1,1,5,40,99,150,150,150,100,0);
 
return SKILL_USED;
}
return SKILL_READY;
 }
 
oraz wycinek z Check.inl z linijkami 255 i 360
stock SkillPercent(id, skill, num)
return (( num * SkillLevel(id,skill) ) / ( TotalLevels ));
 

stock SkillClamp(id, skill, low, high)
return ( low + SkillPercent(id, skill, high-low) );

  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: inny

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

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