[ROZWIĄZANE] Dodatkowe dmg z broni
Blondyneczka ;*
31.05.2012
Część .! Posiadam kod na dodatkowe dmg w ,którym ustawiam + ile ma ją być. Lecz jak będzie wyglądał kod na 2x większe obrażenia ???
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits) { if(!is_user_connected(idattacker)) return HAM_IGNORED; if(!ma_perk[idattacker]) return HAM_IGNORED; if(get_user_team(this) != get_user_team(idattacker) && get_user_weapon(idattacker) == CSW_AK47 && damagebits & DMG_BULLET) cod_inflict_damage(idattacker, this, 5.0, 0.0, idinflictor, damagebits); return HAM_IGNORED; }
Kołodziej
31.05.2012
nie ale możesz zwiększyć dmg zrobić dmg + int lub 1/x z broni innych możliwości nie ma.
Jak się nazwać
31.05.2012
nie ale możesz zwiększyć dmg zrobić dmg + int lub 1/x z broni innych możliwości nie ma.
Co ty człowieku chrzanisz? Nie znasz się a wypowiadasz i dodatkowo wprowadzasz w błąd, idź kolegom w szkole takie kity pociskaj a nie na forum piszesz.
Tu masz na 2* większy dmg
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits) { if(!is_user_connected(idattacker)) return HAM_IGNORED; if(!ma_perk[idattacker]) return HAM_IGNORED; if(get_user_team(this) != get_user_team(idattacker) && get_user_weapon(idattacker) == CSW_AK47 && damagebits & DMG_BULLET) cod_inflict_damage(idattacker, this, damage, 0.0, idinflictor, damagebits); return HAM_IGNORED; }
Gość_21977_* 31.05.2012
Nie słuchaj w ogóle kolodzieja.
Aby zmienić parametr dla funkcji z HamSandwich, używasz funkcji SetHamParamTYP, gdzie za TYP wpisujesz typ zmienianego typu parametrów, tj.:
Użyjesz SetHamParamFloat(4, damage*2); w ten sposób zmieniając parametr 4. (numerujemy od 1) na damage (obrażenia) *2, czyli, de facto, powodując jego zwiększenie dwukrotnie.
Użyjesz SetHamParamFloat, gdyż jest to parametr typu Float.
edit. Edycja dot. dwóch literówek, mnożnik był od samego początku. Dodatkowo opisałem wszystkie typy SetHamParam, zamiast tylko 3 i skrótu "m.in."
Edited by benio101, 31.05.2012 15:01.
Aby zmienić parametr dla funkcji z HamSandwich, używasz funkcji SetHamParamTYP, gdzie za TYP wpisujesz typ zmienianego typu parametrów, tj.:
- SetHamParamFloat
dla zmiany parametru zmiennoprzecinkowego (float)
- SetHamParamInteger
dla zmiany parametru liczby całkowitej (integer)
- SetHamParamString
dla zmiany parametru ciągu znaków (string)
- SetHamParamEntity
dla zmiany parametru bytu (entity)
- SetHamParamTraceResult
dla zmiany parametru ścieżki (tracing)
- SetHamParamVector
dla zmiany parametru wektora (vector)
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(!ma_perk[idattacker])
return HAM_IGNORED;
if(get_user_team(this) != get_user_team(idattacker) && get_user_weapon(idattacker) == CSW_AK47 && damagebits & DMG_BULLET)
SetHamParamFloat(4, damage*2);
return HAM_IGNORED;
}
Użyjesz SetHamParamFloat(4, damage*2); w ten sposób zmieniając parametr 4. (numerujemy od 1) na damage (obrażenia) *2, czyli, de facto, powodując jego zwiększenie dwukrotnie.
Użyjesz SetHamParamFloat, gdyż jest to parametr typu Float.
edit. Edycja dot. dwóch literówek, mnożnik był od samego początku. Dodatkowo opisałem wszystkie typy SetHamParam, zamiast tylko 3 i skrótu "m.in."
Edited by benio101, 31.05.2012 15:01.
dasiek
31.05.2012
Toz góry nie będzie działało (brak mnożnika albo ślepy jestem)
Spróbuj tego.
@Down i w tym samym czasie
Edited by CheQ, 31.05.2012 16:08.
Spróbuj tego.
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits) { if(!is_user_connected(idattacker)) return HAM_IGNORED; if(!ma_perk[idattacker]) return HAM_IGNORED; if(get_user_team(this) != get_user_team(idattacker) && get_user_weapon(idattacker) == CSW_AK47 && damagebits & DMG_BULLET) { damage*=2; } SetHamParamFloat(4, damage); return HAM_IGNORED; }
@Down i w tym samym czasie

Edited by CheQ, 31.05.2012 16:08.
Blondyneczka ;*
31.05.2012
Ojciec Dyrektor
31.05.2012
Wiadomość wygenerowana automatycznie
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz,
raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz,

Z pozdrowieniami,
Zespół AMXX.PL