←  Prośby o modyfikacje silników/klas/perków

AMXX.pl: Support AMX Mod X i SourceMod

»

Klasa
Pomoc w napisaniu klasy/ błąd w kodzie...

  • +
  • -
DISS - zdjęcie DISS 18.11.2014

Witam,

 

Mam następujący problem iż w mojej klasie "Strzelec wyborowy" który posiada 1/5 na odbicie pocisku oraz nie traci hp przy upadku stało się tak iż odbija każdy cios.

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>


#define FALL_VELOCITY 350.0
        
new const nazwa[]   = "Strzelec";
new const opis[]    = "Nie zabiera HP po upadku, 1/5 na odbicie pocisku.";
new const bronie    = (1<<CSW_M4A1)|(1<<CSW_AK47);
new const zdrowie   = 30;
new const kondycja  = -5;
new const inteligencja = 0;
new const wytrzymalosc = 15;

new bool:ma_klase[33];
new bool:falling[33];
    
public plugin_init()
{
	register_plugin(nazwa, "1.0", "xxx");

	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

        RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}

public client_PreThink(id) {
if(ma_klase[id] && is_user_alive(id) && is_user_connected(id))
}
if(entity_get_float(id, EV_FL_flFallVelocity) >= FALL_VELOCITY) {
falling[id] = true;
}
else
{
falling[id] = false;
}

public client_PostThink(id) {
if(ma_klase[id] && is_user_alive(id) && is_user_connected(id))
}
if(falling[id]) {
entity_set_int(id, EV_INT_watertype, -3);
}

public TakeDamage(this, idinflictor, idattacker, Float:damage,damagebits)
{


if(!is_user_connected(idattacker))
return HAM_IGNORED;

if(!ma_klase[this])
return HAM_IGNORED;

if(random(5))//tu zmieniasz 5 (teraz jest 1/5)
return HAM_IGNORED;

cod_inflict_damage(this, idattacker, damage, 0.0, idinflictor,

damagebits);
return HAM_SUPERCEDE;
}

Mógł  by ktoś przerobić mi tak aby dana klasa miala to 1/5 na odbicie (lub nawet 1/10) i dalej posiada "Nie traci HP przy upadku?"

 

Za pomoc dziękuje ;P

Odpowiedz

  • +
  • -
AoN - zdjęcie AoN 18.11.2014

Sprawdż czy działa

Załączone pliki

Odpowiedz

  • +
  • -
DISS - zdjęcie DISS 18.11.2014

Kolego @up

 

Przy próbie pobrania pliku .amxx wyskakuje:

codclass_Strzelec.sma(25) : warning 217: loose indentation
codclass_Strzelec.sma(37) : error 029: invalid expression, assumed zero
codclass_Strzelec.sma(37) : error 004: function "client_PostThink" is not implemented
codclass_Strzelec.sma(43) : error 029: invalid expression, assumed zero
codclass_Strzelec.sma(43) : error 017: undefined symbol "TakeDamage"
codclass_Strzelec.sma(43) : error 017: undefined symbol "idinflictor"
codclass_Strzelec.sma(43) : fatal error 107: too many error messages on one line

 

Także nawet .sma nie chce przejść.

Odpowiedz

  • +
  • -
AoN - zdjęcie AoN 18.11.2014

Teraz powino być

Załączone pliki

Odpowiedz