Jak zrobic samemu totem
Tomi 08.04.2010
Witam, Chcialbym Dostać jakis poradnik, wskazówki jak Zrobić swojego Totema. Pomoglibyście ? Przydało by się to dla nowych
G[o]Q
08.04.2010
masz 2 przyklady w Sma malo
naucz sie wymyslac swoje pomysly i wprowadzac je w zycie bo znajac je twoj server bedzie nie oryginalny
naucz sie wymyslac swoje pomysly i wprowadzac je w zycie bo znajac je twoj server bedzie nie oryginalny
Tomi 08.04.2010
Goq Chcialbym na razie sie nauczyć podstaw.
A do Totema jest pełno "Linijek"
wystarczy przerobic to?
Edited by backspace, 08.04.2010 17:15.
A do Totema jest pełno "Linijek"
wystarczy przerobic to?
public item_totemheal(id) { if (used_item[id]) { hudmsg(id,2.0,"Leczacy Totem mozesz uzyc raz na runde!") return PLUGIN_CONTINUE } used_item[id] = true new origin[3] pev(id,pev_origin,origin) new ent = Spawn_Ent("info_target") set_pev(ent,pev_classname,"Effect_Healing_Totem") set_pev(ent,pev_owner,id) set_pev(ent,pev_solid,SOLID_TRIGGER) set_pev(ent,pev_origin,origin) set_pev(ent,pev_ltime, halflife_time() + 7 + 0.1) engfunc(EngFunc_SetModel, ent, "addons/amxmodx/diablo/totem_heal.mdl") set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 ) engfunc(EngFunc_DropToFloor,ent) set_pev(ent,pev_nextthink, halflife_time() + 0.1) return PLUGIN_CONTINUE } public Effect_Healing_Totem_Think(ent) { new id = pev(ent,pev_owner) new totem_dist = 300 new amount_healed = player_b_heal[id] //We have emitted beam. Apply effect (this is delayed) if (pev(ent,pev_euser2) == 1) { new Float:forigin[3], origin[3] pev(ent,pev_origin,forigin) FVecIVec(forigin,origin) //Find people near and damage them new entlist[513] new numfound = find_sphere_class(0,"player",totem_dist+0.0,entlist,512,forigin) for (new i=0; i < numfound; i++) { new pid = entlist[i] if (get_user_team(pid) != get_user_team(id)) continue if (is_user_alive(pid)) change_health(pid,amount_healed,0,"") } set_pev(ent,pev_euser2,0) set_pev(ent,pev_nextthink, halflife_time() + 1.5) return PLUGIN_CONTINUE } //Entity should be destroyed because livetime is over if (pev(ent,pev_ltime) < halflife_time() || !is_user_alive(id)) { remove_entity(ent) return PLUGIN_CONTINUE } //If this object is almost dead, apply some render to make it fade out if (pev(ent,pev_ltime)-2.0 < halflife_time()) set_rendering ( ent, kRenderFxNone, 255,255,255, kRenderTransAlpha, 100 ) new Float:forigin[3], origin[3] pev(ent,pev_origin,forigin) FVecIVec(forigin,origin) //Find people near and give them health message_begin( MSG_BROADCAST, SVC_TEMPENTITY, origin ); write_byte( TE_BEAMCYLINDER ); write_coord( origin[0] ); write_coord( origin[1] ); write_coord( origin[2] ); write_coord( origin[0] ); write_coord( origin[1] + totem_dist ); write_coord( origin[2] + totem_dist ); write_short( sprite_white ); write_byte( 0 ); // startframe write_byte( 0 ); // framerate write_byte( 10 ); // life write_byte( 10 ); // width write_byte( 255 ); // noise write_byte( 255 ); // r, g, b write_byte( 100 ); // r, g, b write_byte( 100 ); // r, g, b write_byte( 128 ); // brightness write_byte( 5 ); // speed message_end(); set_pev(ent,pev_euser2,1) set_pev(ent,pev_nextthink, halflife_time() + 0.5) return PLUGIN_CONTINUE }
Edited by backspace, 08.04.2010 17:15.
G[o]Q
08.04.2010
mowisz ze chcesz przyklad to ci odpowiadam masz 2 przyklady w sma a pozatym jak nie ogarniasz podstaw to nie bierz sie za cos co ich wymaga
Tomi 08.04.2010
Przepięknie Motywujesz Ludzi do działania. Nie pytam Ciebie jak mam sie zacząć uczyć tylko czy ktoś może Mi pomóc jak zrobić totem.
KoRnY
08.04.2010
Ale taka jest prawda?
Teraz wszyscy wszystko kopiują.
Tak jak powiedział G[o]Q przykłady masz w kodzie.
Teraz wszyscy wszystko kopiują.
Tak jak powiedział G[o]Q przykłady masz w kodzie.
Tomi 08.04.2010
To po kiego Ku.... h... jest te forum... proszę o pomoc w temacie Pytania
Ty KoRnY nie chce nic mówić ale tylko spamujesz lub powtarzasz po innych....
Ludzie chciałem wskazówki. To sie do mnie rzuca jeden z drugim
Ty KoRnY nie chce nic mówić ale tylko spamujesz lub powtarzasz po innych....
Ludzie chciałem wskazówki. To sie do mnie rzuca jeden z drugim
KoRnY
08.04.2010
wystarczy przerobic to?
public item_totemheal(id) { if (used_item[id]) { hudmsg(id,2.0,"Leczacy Totem mozesz uzyc raz na runde!") return PLUGIN_CONTINUE } used_item[id] = true new origin[3] pev(id,pev_origin,origin) new ent = Spawn_Ent("info_target") set_pev(ent,pev_classname,"Effect_Healing_Totem") set_pev(ent,pev_owner,id) set_pev(ent,pev_solid,SOLID_TRIGGER) set_pev(ent,pev_origin,origin) set_pev(ent,pev_ltime, halflife_time() + 7 + 0.1) engfunc(EngFunc_SetModel, ent, "addons/amxmodx/diablo/totem_heal.mdl") set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 ) engfunc(EngFunc_DropToFloor,ent) set_pev(ent,pev_nextthink, halflife_time() + 0.1) return PLUGIN_CONTINUE } public Effect_Healing_Totem_Think(ent) { new id = pev(ent,pev_owner) new totem_dist = 300 new amount_healed = player_b_heal[id] //We have emitted beam. Apply effect (this is delayed) if (pev(ent,pev_euser2) == 1) { new Float:forigin[3], origin[3] pev(ent,pev_origin,forigin) FVecIVec(forigin,origin) //Find people near and damage them new entlist[513] new numfound = find_sphere_class(0,"player",totem_dist+0.0,entlist,512,forigin) for (new i=0; i < numfound; i++) { new pid = entlist[i] if (get_user_team(pid) != get_user_team(id)) continue if (is_user_alive(pid)) change_health(pid,amount_healed,0,"") } set_pev(ent,pev_euser2,0) set_pev(ent,pev_nextthink, halflife_time() + 1.5) return PLUGIN_CONTINUE } //Entity should be destroyed because livetime is over if (pev(ent,pev_ltime) < halflife_time() || !is_user_alive(id)) { remove_entity(ent) return PLUGIN_CONTINUE } //If this object is almost dead, apply some render to make it fade out if (pev(ent,pev_ltime)-2.0 < halflife_time()) set_rendering ( ent, kRenderFxNone, 255,255,255, kRenderTransAlpha, 100 ) new Float:forigin[3], origin[3] pev(ent,pev_origin,forigin) FVecIVec(forigin,origin) //Find people near and give them health message_begin( MSG_BROADCAST, SVC_TEMPENTITY, origin ); write_byte( TE_BEAMCYLINDER ); write_coord( origin[0] ); write_coord( origin[1] ); write_coord( origin[2] ); write_coord( origin[0] ); write_coord( origin[1] + totem_dist ); write_coord( origin[2] + totem_dist ); write_short( sprite_white ); write_byte( 0 ); // startframe write_byte( 0 ); // framerate write_byte( 10 ); // life write_byte( 10 ); // width write_byte( 255 ); // noise write_byte( 255 ); // r, g, b write_byte( 100 ); // r, g, b write_byte( 100 ); // r, g, b write_byte( 128 ); // brightness write_byte( 5 ); // speed message_end(); set_pev(ent,pev_euser2,1) set_pev(ent,pev_nextthink, halflife_time() + 0.5) return PLUGIN_CONTINUE }
Tak wystarczy to przerobić.
+ dodać ewentualny efekt którego w diablo nie ma
Vertricus
08.04.2010
Kod totemu najlepiej skopiować pousuwać co zbędę i zrobić gotowa.
Dodać do check_magic wywołanie oraz register_think w plugin_init.
Wklejasz twój kod z totema funkcje nadajesz taką nazwę jak wywołanie z check_magic a classname na taki z register_think.
Kopiujesz kod thinka nazywając funkcję jak w register_think.
I tu właśnie w thinku będzie kod który będzie odpowiadać za to co dany totem robi.
Czyli tak Spawn -> wygląd, model, miejsce, latający, wyglądający jak paka czy też jak ta emotikonka
a w thinku -> moc tj, piorun, leczenie, oślepianie, podrzucanie, bomba, czy zabijanie śmiechem.
Masz wskazówkę a właściwie mini tut ;| Moce możesz skopiować z zombie moda np. zamrożenie, edytując warunki pod diablo
Dodać do check_magic wywołanie oraz register_think w plugin_init.
Wklejasz twój kod z totema funkcje nadajesz taką nazwę jak wywołanie z check_magic a classname na taki z register_think.
Kopiujesz kod thinka nazywając funkcję jak w register_think.
I tu właśnie w thinku będzie kod który będzie odpowiadać za to co dany totem robi.
Czyli tak Spawn -> wygląd, model, miejsce, latający, wyglądający jak paka czy też jak ta emotikonka
a w thinku -> moc tj, piorun, leczenie, oślepianie, podrzucanie, bomba, czy zabijanie śmiechem.
Masz wskazówkę a właściwie mini tut ;| Moce możesz skopiować z zombie moda np. zamrożenie, edytując warunki pod diablo
Adminek AMXX.PL 09.04.2010
Wiadomość wygenerowana automatycznie
Ten temat został zamknięty przez moderatora.
Powód: Bo śnieg (Rozwiązany)
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: Bo śnieg (Rozwiązany)
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL