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

AMXX.pl: Support AMX Mod X i SourceMod

»

Klasa
Kilka skryptów do na początek

  • +
  • -
avaster - zdjęcie avaster 25.11.2013

Witam potrzebował bym kilku skryptów bo w generatorze nie ma ich a mianowicie

 

Jak zrobić 1 na 8 np z degla lub innej broni

 

 

jak zrobić np dodatkowe 5 dmg z ak47 plus int

 

klasa nie robi hałasu podczas chodzenia

 

 

podczas strzelania x hp przeciwnika wraca do ciebie 

 

 

 

chodzi mi o same kody i w jakie miejsce je wklepać 

 

klasy będę tworzył na tym bazowym kodzie 

#include <amxmodx>
#include <amxmisc>
#include <codmod>
        
new const nazwa[]   = "testowa kalsa";
new const opis[]    = "test klasy";
new const bronie    = (1<<CSW_AUG)|(1<<CSW_DEAGLE);
new const zdrowie   = 10;
new const kondycja  = 10;
new const inteligencja = 10;
new const wytrzymalosc = 10;
    
public plugin_init()
{
	register_plugin(nazwa, "1.0", "amxx.pl");

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

Blood Angel - zdjęcie Blood Angel 26.11.2013

Na początek pierwsze co musisz zrobić to:

Pod new const wyrzymalosc = 10;

Dodaj

new bool:ma_klase[33];

Na sam dół dodaj:

public cod_class_enabled(id){
ma_klase[id] = true;
}
 
public cod_class_diasbled(id){
ma_klase[id] = false;
}

1/X z broni

http://amxx.pl/topic...wybranej-broni/

 

DMG + INT

Na samą górę:

#include <hamsandwich>

Do plugin_init

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

Na sam dół

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
(!is_user_connected(idattacker))
return HAM_IGNORED;
 
if(!ma_klase[idattacker])
return HAM_IGNORED;
 
if(get_user_weapon(idattacker) == CSW_AK47 && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, 5.0, 0.5, idinflictor, damagebits);
 
return HAM_IGNORED;
}
 
W cod_inflict_damage:
5.0 - dodatkowe obrażenia
0.5 - mnożnik inteligencji (tutaj połowa, czyli 100 int = +50DMG)
 
Nie słychać kroków
Do public cod_class_enabled dodaj
set_user_footsteps(id, 1)
 
Do public cod_class_disabled dodaj
set_user_footsteps(id, 0)
Odpowiedz

  • +
  • -
avaster - zdjęcie avaster 26.11.2013

kolego zobacz zrobiłem klase z dmg za int i wyskoczyło mi w kompilatorze www coś takiego

 

 

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team

a.sma(28) : warning 225: unreachable code
a.sma(31) : error 017: undefined symbol "DMG_BULLET"
a.sma(32) : warning 213: tag mismatch

1 Error.
Could not locate output file a.amxx (compile failed).

 

a tak zrobiłem:

 

 

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <hamsandwich>
        
new const nazwa[]   = "testowa kalsa";
new const opis[]    = "test klasy";
new const bronie    = (1<<CSW_AUG)|(1<<CSW_DEAGLE);
new const zdrowie   = 10;
new const kondycja  = 10;
new const inteligencja = 10;
new const wytrzymalosc = 10;
new bool:ma_klase[33];
    
public plugin_init()
{
    register_plugin(nazwa, "1.0", "amxx.pl");

    cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
    RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
(!is_user_connected(idattacker))
return HAM_IGNORED;
 
if(!ma_klase[idattacker])
return HAM_IGNORED;
 
if(get_user_weapon(idattacker) == CSW_AUG && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, 5.0, 1, idinflictor, damagebits);
 
return HAM_IGNORED;
}
public cod_class_enabled(id){
ma_klase[id] = true;
}
 
public cod_class_diasbled(id){
ma_klase[id] = false;
}

 

Odpowiedz

Blood Angel - zdjęcie Blood Angel 26.11.2013

Zapomniałem o jednym.

Dodaj pod include'ami:

#define DMG_BULLET (1<<1)
Odpowiedz