[ROZWIĄZANE] Zrobienie w klasie ColorChatu...
Own3d123
20.01.2013
Witam , chciałbym zrobić w klasie coś w stylu " Klasa stworzona przez www.twojanazwa.pl" z ColorChatem ale po próbie komplikowania -->
Błędy :
Plik .SMA
Klasa została stworzona w amxx.pl/generator-klas i próbowałem przerobić w pawnie ale już niewiem dlaczego wywala te 3 ERROR'y
Proszę o szybką pomoc , dzięki z góry; )
Dodam że w PAWN jestem zielony
i chciałbym aby mi ktoś wytłumaczył co zrobiłem źle
Użytkownik Own3d123 edytował ten post 20.01.2013 15:59
Błędy :
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team Error: Undefined symbol "PLUGIN" on line 4 Error: Undefined symbol "VERSION" on line 4 Error: Undefined symbol "AUTHOR" on line 4 Error: Too many error messages on one line on line 4 Compilation aborted. 4 Errors. Could not locate output file C:\Users\Tajne\Desktop\compiler\amx studio\Untitled.amx (compile failed).
Plik .SMA
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) // Add your code here... } /* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <codmod> #include <engine> #include <hamsandwich> #include <ColorChat> #define PLUGIN "New Plug-In" #define VERSION "1.0" #define AUTHOR "Tajne" public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) new const nazwa[] = "Ghost"; new const opis[] = "Jest w polowie niewiedzialny , ma zwiekszona szybkosc oraz posiada 2 rakiety"; new const bronie = 0; new const zdrowie = 0; new const kondycja = 30; new const inteligencja = 0; new const wytrzymalosc = 0; new sprite_blast; new ilosc_rakiet_gracza[33]; new poprzednia_rakieta_gracza[33]; new ma_klase[33]; public plugin_init() { register_plugin(nazwa, "1.0", "amxx.pl"); cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc); register_touch("rocket", "*" , "DotykRakiety"); RegisterHam(Ham_Spawn, "player", "fwSpawn_Rakiety", 1); } public plugin_precache() { sprite_blast = precache_model("sprites/dexplo.spr"); precache_model("models/rpgrocket.mdl"); } { ColorChat(id, GREEN, "Klasa zostala stworzona przez StylGrania.pl"); } public client_disconnect(id) { new entRakiety = find_ent_by_class(0, "rocket"); while(entRakiety > 0) { if(entity_get_edict(entRakiety, EV_ENT_owner) == id) remove_entity(entRakiety); entRakiety = find_ent_by_class(entRakiety, "rocket"); } } public cod_class_enabled(id) { set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 128); ilosc_rakiet_gracza[id] = 2; ma_klase[id] = false; } public cod_class_disabled(id) { set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255); ma_klase[id] = false; } public cod_class_skill_used(id) { if (!ilosc_rakiet_gracza[id]) { client_print(id, print_center, "Wykorzystales juz wszystkie rakiety!"); } else { if(poprzednia_rakieta_gracza[id] + 2.0 > get_gametime()) { client_print(id, print_center, "Rakiet mozesz uzywac co 2 sekundy!"); } else { if (is_user_alive(id)) { poprzednia_rakieta_gracza[id] = floatround(get_gametime()); ilosc_rakiet_gracza[id]--; new Float: Origin[3], Float: vAngle[3], Float: Velocity[3]; entity_get_vector(id, EV_VEC_v_angle, vAngle); entity_get_vector(id, EV_VEC_origin , Origin); new Ent = create_entity("info_target"); entity_set_string(Ent, EV_SZ_classname, "rocket"); entity_set_model(Ent, "models/rpgrocket.mdl"); vAngle[0] *= -1.0; entity_set_origin(Ent, Origin); entity_set_vector(Ent, EV_VEC_angles, vAngle); entity_set_int(Ent, EV_INT_effects, 2); entity_set_int(Ent, EV_INT_solid, SOLID_BBOX); entity_set_int(Ent, EV_INT_movetype, MOVETYPE_FLY); entity_set_edict(Ent, EV_ENT_owner, id); VelocityByAim(id, 1000 , Velocity); entity_set_vector(Ent, EV_VEC_velocity ,Velocity); } } } } public fwSpawn_Rakiety(id) { if(is_user_alive(id)) ilosc_rakiet_gracza[id] = 2; } public DotykRakiety(ent) { if (!is_valid_ent(ent)) return; new attacker = entity_get_edict(ent, EV_ENT_owner); new Float:fOrigin[3]; entity_get_vector(ent, EV_VEC_origin, fOrigin); new iOrigin[3]; for(new i=0;i<3;i++) iOrigin[i] = floatround(fOrigin[i]); message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin); write_byte(TE_EXPLOSION); write_coord(iOrigin[0]); write_coord(iOrigin[1]); write_coord(iOrigin[2]); write_short(sprite_blast); write_byte(32); write_byte(20); write_byte(0); message_end(); new entlist[33]; new numfound = find_sphere_class(ent, "player", 190.0, entlist, 32); for (new i=0; i < numfound; i++) { new pid = entlist[i]; if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid)) continue; cod_inflict_damage(attacker, pid, 55.0, 0.9, ent, (1<<24)); } remove_entity(ent); }
Klasa została stworzona w amxx.pl/generator-klas i próbowałem przerobić w pawnie ale już niewiem dlaczego wywala te 3 ERROR'y
Proszę o szybką pomoc , dzięki z góry; )
Dodam że w PAWN jestem zielony


Użytkownik Own3d123 edytował ten post 20.01.2013 15:59
Tytanowy
20.01.2013
Pierwszym błędem jakim zrobiłeś, było to, że
.Pozdrawiam
Użytkownik Tytanowy edytował ten post 20.01.2013 16:11
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR)wystąpiło dwa razy, czyli te z samej góry powinieneś usunać, gdyż na samej górze powinno byc
/* Plugin generated by AMXX-Studio */ #include....Jeżeli poprawiłeś już ten błąd, zabieramy się za reklamę. Napisałeś ją dobrze, bez błędów, ale musi być jeszcze coś co odpowiada za jej wyświetlanie. W tym celu używamy tzw. funkcji czasowych
set_task, więcej o niej w tym temacie. http://amxx.pl/topic...nkcje-czasowe/A więc tworzymy nowy public, który będzie wyglądał tak:
public print1(id){ set_task(120.0, "reklama"); }Co 2 minuty będzie on wywoływał funkcję "reklama", która odpowiada za reklamę Twojego pluginu. Mam nadzieję, że jasno wytłumaczyłem

Załączone pliki
Użytkownik Tytanowy edytował ten post 20.01.2013 16:11
MarWit
20.01.2013
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