Błąd kompilacji klasy
Ficu
02.07.2011
#include <amxmodx>
#include <hamsandwich>
#include <codmod>
#include <engine>
#include <ColorChat>
#include <fakemeta>
#define DMG_BULLET (1<<1)
new bool:ma_klase[33];
new const nazwa[] = "Niewidzialny (Zasluzony)";
new const opis[] = "Niewidzialny, klasa tylko dla zasluzonych, natychmiastowe zabicie z noza, scout";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE | 1<<CSW_SCOUT | 1<<DEFUSE KIT | 1<<SHIELD | 1<<CSW_FLASHBANG | 1<<CSW_HEGRENADE | 1<<CSW_SMOKEGRENADE;
new const zdrowie = 100;
new const kondycja = 100;
new const inteligencja = 100;
new const wytrzymalosc = 10;
new bool:ma_klase[33]; **
public plugin_init()
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_event("CurWeapon","CurWeapon","be", "1=1");
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
public cod_class_enabled(id)
{
ColorChat(id, RED, "[Niewidzialny] Nie masz uprawnien, aby uzywac tej klasy. (wiecej info na forum www.CSWolaWest.pl)"); //Gdy gracz nie ma flagi wyświetli mu komunikat
if(!(get_user_flags(id) & ADMIN_LEVEL_G)) //FLAGA
{
ColorChat(id, RED, "[Niewidzialny] Nie masz uprawnien, aby uzywac tej klasy. (wiecej info na forum www.CSWolaWest.pl)") //Znowu info ze przykładowa klasa jest PREMIUM
return COD_STOP;
}
ma_klase[id] = true;
return COD_CONTINUE;
}
**
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
}
public cod_class_disabled(id)
{
ma_klase[id] = false; **
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}
public CurWeapon(id)
{
if(!is_user_connected(id))
return;
if(!ma_klase[id])
return;
set_user_clip(id, 2);
}
stock set_user_clip(id, ammo)
{
new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
get_weaponname(weapon, weaponname, 31);
while ((weaponid = engfunc(EngFunc_FindEntityByString, weaponid, "classname", weaponname)) != 0)
if (pev(weaponid, pev_owner) == id) {
set_pdata_int(weaponid, 51, ammo, 4);
return weaponid;
}
return 0;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(!ma_klase[idattacker])
return HAM_IGNORED;
if(damagebits & DMG_BULLET)
{
new weapon = get_user_weapon(idattacker);
if(weapon == CSW_SCOUT && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
}
return HAM_IGNORED;
}
Bardzo proszę kogoś o skompilowanie tej klasy oraz napisanie w poście co było źle zrobione

Attached Files
BliBs_Pl
02.07.2011
Dałeś dwa razy:
new bool:ma_klase[33];Źle klamry dawałeś.
Jedno mam pytanie bo w opisie jest:
Ja zrobiłem że 1/1 z kosy ma, czy ze scouta też ma mieć 1/1 ?natychmiastowe zabicie z noza, scout
Attached Files
Ficu
02.07.2011



edit:
Nadal nie mogę skompilować wyskakują takie błędy
.sma w załącznikucodclass_niewidzialny.sma(22) : error 021: symbol already defined: "register_event"
codclass_niewidzialny.sma(24) : error 021: symbol already defined: "RegisterHam"

Attached Files
Edited by Ficu, 02.07.2011 22:00.
Masło
02.07.2011
Masz, niestety nie można dać tarczy i deffa.
Niestety <-- to prawda - za dużo broni dałeś klasie !
kamioool
02.07.2011
#include <amxmodx>
#include <hamsandwich>
#include <codmod>
#include <engine>
#include <colorchat>
#include <fun>
#define DMG_BULLET (1<<1)
new bool:ma_klase[33];
new const nazwa[] = "Niewidzialny (Zasluzony)";
new const opis[] = "Niewidzialny, klasa tylko dla zasluzonych, natychmiastowe zabicie z noza, scout";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE | 1<<CSW_SCOUT | 1<<CSW_FLASHBANG | 1<<CSW_HEGRENADE | 1<<CSW_SMOKEGRENADE;
new const zdrowie = 100;
new const kondycja = 100;
new const inteligencja = 100;
new const wytrzymalosc = 10;
public plugin_init()
{
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
register_event("CurWeapon","CurWeapon","be", "1=1");
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_G))
{
ColorChat(id, RED, "[Niewidzialny] Nie masz uprawnien, aby uzywac tej klasy. (wiecej info na forum www.CSWolaWest.pl)") //Napis ktory wyswietli sie jak gracz nie ma flagi
return COD_STOP;
}
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
ma_klase[id] = true;
give_item(id, "weapon_shield")
give_item(id, "item_thighpack")
return COD_CONTINUE;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
strip_user_weapons(id);
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(!ma_klase[idattacker])
return HAM_IGNORED;
if(damagebits & DMG_BULLET)
{
new weapon = get_user_weapon(idattacker);
if(weapon == CSW_KNIFE && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
}
return HAM_IGNORED;
}
Sprawdź, może zadziała DefuseKit i Shield

Ficu
02.07.2011

edit: skompilowało się poprawnie zaraz zobaczę czy działa

Edited by Ficu, 02.07.2011 22:21.
kamioool
02.07.2011
Tylko daj znać

Edited by kamioool, 02.07.2011 23:00.
Jak się nazwać
02.07.2011
#include <amxmodx> #include <hamsandwich> #include <codmod> #include <engine> #include <colorchat> #include <fun> #include <fakemeta> #define DMG_BULLET (1<<1) new bool:ma_klase[33]; new const nazwa[] = "Niewidzialny (Zasluzony)"; new const opis[] = "Niewidzialny, klasa tylko dla zasluzonych, natychmiastowe zabicie z noza, scout"; new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE | 1<<CSW_SCOUT | 1<<CSW_FLASHBANG | 1<<CSW_HEGRENADE | 1<<CSW_SMOKEGRENADE; new const zdrowie = 100; new const kondycja = 100; new const inteligencja = 100; new const wytrzymalosc = 10; public plugin_init() { cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc); register_event("CurWeapon","CurWeapon","be", "1=1"); RegisterHam(Ham_TakeDamage, "player", "TakeDamage"); } public cod_class_enabled(id) { if(!(get_user_flags(id) & ADMIN_LEVEL_G)) { ColorChat(id, RED, "[Niewidzialny] Nie masz uprawnien, aby uzywac tej klasy. (wiecej info na forum www.CSWolaWest.pl)") //Napis ktory wyswietli sie jak gracz nie ma flagi return COD_STOP; } set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1); ma_klase[id] = true; cod_set_user_shield(id, 1) fm_give_item(id, "item_thighpack"); return COD_CONTINUE; } public cod_class_disabled(id) { ma_klase[id] = false; set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255); strip_user_weapons(id); } public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits) { if(!is_user_connected(idattacker)) return HAM_IGNORED; if(!ma_klase[idattacker]) return HAM_IGNORED; if(damagebits & DMG_BULLET) { new weapon = get_user_weapon(idattacker); if(weapon == CSW_KNIFE && damage > 20.0) cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits); } return HAM_IGNORED; }
To na bank zadziała.
Mam nadzięję że pomogłem.
Ficu
02.07.2011

codclass_niewidzialny.sma(37) : error 017: undefined symbol "fm_give_item"
Ficu
02.07.2011


Masło
02.07.2011
Wywal 1 broń = 1 Broń dodać !
____________________________
1 = 1 !
np. Smoke - po co ? = Defuse !
BliBs_Pl
03.07.2011
A ty masło jak się nie znasz to nic nie mów bo nie chodziło o to że za dużo broni ma klasa tylko o to że nie można posługiwać się ani CSW_SHIELD ani CSW_DEFUSEKIT bo takie coś nie istnieje. Potem spamujesz wiadomościami typu tak myślałem, powtarzasz kod który dodał poprzednik i piszesz "Może zadziała" i potem post wieńczący twoją wysoką bystrość:
Jakby to chodziło o miejsce. Najpierw trochę ogarnij pawna a dopiero potem pisz. Widać że ostro spamujesz jak się nie znasz i 35 postów w jeden dzień piszesz.1 wyjście:
Wywal 1 broń = 1 Broń dodać !
____________________________
1 = 1 !
np. Smoke - po co ? = Defuse !
kamioool
03.07.2011
#include <amxmodx>
#include <hamsandwich>
#include <codmod>
#include <engine>
#include <colorchat>
#include <fun>
#define DMG_BULLET (1<<1)
new bool:ma_klase[33];
new const nazwa[] = "Niewidzialny (Zasluzony)";
new const opis[] = "Niewidzialny, klasa tylko dla zasluzonych, natychmiastowe zabicie z noza, scout";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE | 1<<CSW_SCOUT | 1<<CSW_FLASHBANG | 1<<CSW_HEGRENADE | 1<<CSW_SMOKEGRENADE;
new const zdrowie = 100;
new const kondycja = 100;
new const inteligencja = 100;
new const wytrzymalosc = 10;
public plugin_init()
{
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_Spawn, "player", "Resp", 1);
register_event("CurWeapon","CurWeapon","be", "1=1");
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_G))
{
ColorChat(id, RED, "[Niewidzialny] Nie masz uprawnien, aby uzywac tej klasy. (wiecej info na forum www.CSWolaWest.pl)") //Napis ktory wyswietli sie jak gracz nie ma flagi
return COD_STOP;
}
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 1);
ma_klase[id] = true;
Resp(id);
return COD_CONTINUE;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;
if(!ma_klase[idattacker])
return HAM_IGNORED;
if(damagebits & DMG_BULLET)
{
new weapon = get_user_weapon(idattacker);
if(weapon == CSW_KNIFE && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
}
return HAM_IGNORED;
}
public Resp(id)
{
if(ma_klase[id])
{
give_item(id, "item_thighpack");
}
}
DefuseKit działa, sprawdzałem

Edited by kamioool, 03.07.2011 11:06.