hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2025.07.10. 09:20



Jelenlévő felhasználók

Jelenleg 338 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 337 vendég

A legtöbb felhasználó (2761 fő) 2025.01.09. 20:06-kor tartózkodott itt.

Regisztrált felhasználók: Bing [Bot]az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása Hozzászólás a témához  [5 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Entitys Robbanó Tárgyak
HozzászólásElküldve:2015.08.20. 21:01 
Offline
Fórum Moderátor
Avatar

Csatlakozott:2014.05.01. 13:18
Hozzászólások:628
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 105 alkalommal
Tiszteletem!

Vannak azok az objektumok amelyeken olyan enetity van ami ha c4 robbanásnál közel van felrobban. Ismerős, például a de_dust-ról.
Ezek a tárgyak egy másik modell érintkezésekor is felrobbannak. Teszem azt, ha meglövöm JetPack-kal és amikor a rocket.mdl hozzáér (Touch-ol) akkor az rögtön robban.
Erre szeretnék valamit kitalálni, mert nem jó hogy a robbanás emódon le tud sebezni vagy meg is tud ölni akár.
Valakinek valamilyen ötlete erre?

Köszönöm!


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Entitys Robbanó Tárgyak
HozzászólásElküldve:2015.08.21. 02:32 
Offline
Jómunkásember
Avatar

Csatlakozott:2013.01.15. 19:04
Hozzászólások:407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
Van több módja a dolognak.
1. A robbanó dobozokat törlöd a pályáról:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <fakemeta>
  3. #include <engine>
  4.  
  5. #define PLUGIN "ASD"
  6. #define VERSION "1.0"
  7. #define AUTHOR "Demon"
  8.  
  9. public plugin_init() {
  10. register_plugin(PLUGIN, VERSION, AUTHOR)
  11.  
  12. if(engfunc(EngFunc_FindEntityByString,-1 ,"classname", "func_breakable")) {
  13. new ent = FM_NULLENT;
  14. while((ent = find_ent_by_class(ent, "func_breakable") ) > 0)
  15. remove_entity(ent);
  16. }
  17. }

2. A robbanó dobozoknak az életét végtelenre állítod:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <fakemeta>
  3. #include <engine>
  4.  
  5. #define PLUGIN "ASD"
  6. #define VERSION "1.0"
  7. #define AUTHOR "Demon"
  8.  
  9. public plugin_init() {
  10. register_plugin(PLUGIN, VERSION, AUTHOR)
  11.  
  12. register_logevent( "Round_start", 2, "1=Round_Start" );
  13. }
  14.  
  15. public Round_start() {
  16. if(engfunc(EngFunc_FindEntityByString,-1 ,"classname", "func_breakable")) {
  17. new ent = FM_NULLENT;
  18. while((ent = find_ent_by_class(ent, "func_breakable") ) > 0)
  19. set_pev(ent, pev_health, 0);
  20. }
  21. }


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Entitys Robbanó Tárgyak
HozzászólásElküldve:2015.08.21. 18:49 
Offline
Fórum Moderátor
Avatar

Csatlakozott:2014.05.01. 13:18
Hozzászólások:628
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 105 alkalommal
Az 1. nekem nem színpatikus, nem akarom őket törölni.
A második, pedig nem működött.

Szerintem az élet az mindegy, ugyanis szerintem a d2-ős dobozok nem is func_breakable entitysek.
És nem is a kártól robbannak fel, hanem a touch-tól. Ugyanis amikor a func_breakable cuccot lövöm akkor nem esik szét, csak ha az a másikat.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Entitys Robbanó Tárgyak
HozzászólásElküldve:2015.08.22. 00:10 
Offline
Jómunkásember
Avatar

Csatlakozott:2013.01.15. 19:04
Hozzászólások:407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
Ha az életet állítom akkor paintball módban nem robban fel a doboz.
D2-n a robbanó dobozok mind func_breakable entityk.
A fenti pluginokkal az a gond, hogy az összes func_breakable entityt figyelembe veszi. A 2 plugin közül egyiket se használd.

Tessék ez a plugin a func_breakable entityket átállítsa func_wall-ra, így nem fog felrobbanni ha meglövöd JetPack bazookával.

Használata:
Ránézel arra az entityre(célkereszted rajta legyen) amely felrobban ha bazookával meglövöd, és konzolba beírok, hogy e_edit, majd ha chatbe kírja, hogy "A nézett entity sikeresen szerkesztve lett." akkor többet már azt a dobozt, elemet nem fogod tudni szétlőni. Mindegyik robbanó dobozzal, elemmel csináld meg ugyanezt.
Van még egy parancs, amelyet ha használsz akkor visszaállítsa az összes szerkesztett entityt (csak az adott pályáról), ez nem más mint e_reset. Csak pályaváltás után állnak vissza az entityk.
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <fakemeta>
  4. #include <engine>
  5.  
  6. #define PLUGIN "Breakable ent editor"
  7. #define VERSION "1.0"
  8. #define AUTHOR "Demon"
  9.  
  10. new ents[100][32], g_total;
  11. new g_save_file[200];
  12.  
  13. public plugin_precache()
  14. {
  15. get_configsdir(g_save_file, 199);
  16. add(g_save_file, 199, "/edited_ents", 0);
  17.  
  18. if( !dir_exists(g_save_file) )
  19. mkdir(g_save_file);
  20.  
  21. new map[64];
  22. get_mapname(map, 63);
  23. strtolower(map);
  24.  
  25. format(g_save_file, 199, "%s/%s.txt", g_save_file, map);
  26.  
  27. LoadEntities();
  28.  
  29. return PLUGIN_CONTINUE;
  30. }
  31.  
  32. public plugin_init() {
  33. register_plugin(PLUGIN, VERSION, AUTHOR)
  34.  
  35. register_clcmd("e_edit", "CmdEdit", ADMIN_KICK, "-- breakable entity szerkesztes");
  36. register_concmd("e_reset", "CmdReset", ADMIN_KICK, "-- osszes entity visszaallitas");
  37.  
  38. register_event("HLTV", "EventNewRound", "a", "1=0", "2=0");
  39. register_logevent("EventNewRound", 2, "1=Round_Start");
  40. register_logevent("EventNewRound", 2, "1=Round_End");
  41. }
  42.  
  43. public EventNewRound()
  44. {
  45. for(new i; i < g_total; i++)
  46. {
  47. new ent = find_ent_by_model(-1, "func_breakable", ents[i]);
  48. if(ent > 0)
  49. set_pev(ent, pev_classname, "func_wall");
  50. }
  51. }
  52.  
  53. public CmdEdit(plr, level, cid)
  54. {
  55. if(!cmd_access(plr, level, cid, 1))
  56. return PLUGIN_HANDLED;
  57.  
  58. new ent = GetAimAtEnt(plr);
  59.  
  60. if(pev_valid(ent))
  61. {
  62. static classname[64];
  63. pev(ent, pev_classname, classname, 63);
  64.  
  65. if(!equali(classname, "func_breakable"))
  66. {
  67. print_color(plr, "!gA nézett entity nem func_breakable entity.");
  68. return PLUGIN_HANDLED;
  69. }
  70.  
  71. new model[32];
  72. pev(ent, pev_model, model, 31);
  73.  
  74. set_pev(ent, pev_classname, "func_wall");
  75.  
  76. copy(ents[g_total], 31, model);
  77. g_total++;
  78.  
  79. SaveEntities();
  80.  
  81. print_color(plr, "!gA nézett entity sikeresen szerkesztve lett.");
  82. }
  83.  
  84. return PLUGIN_HANDLED;
  85. }
  86.  
  87. public CmdReset(plr, level, cid)
  88. {
  89. if(!cmd_access(plr, level, cid, 1))
  90. return PLUGIN_HANDLED;
  91.  
  92. g_total = 0;
  93. if(file_exists(g_save_file))
  94. delete_file(g_save_file);
  95.  
  96. console_print(plr, "Az osszes szerkesztett entity mapvaltas utan visszaall az eredeti adatokra.");
  97.  
  98. return PLUGIN_HANDLED;
  99. }
  100.  
  101. LoadEntities()
  102. {
  103. if(file_exists(g_save_file))
  104. {
  105. g_total = 0;
  106. new f = fopen(g_save_file, "rt");
  107.  
  108. new data[36], model[32];
  109.  
  110. while(!feof(f))
  111. {
  112. fgets(f, data, 35);
  113.  
  114. parse(data, model, 31);
  115.  
  116. copy(ents[g_total], 31, model);
  117. g_total++;
  118. }
  119.  
  120. fclose(f);
  121.  
  122. return 1;
  123. }
  124.  
  125. return 0;
  126. }
  127.  
  128. SaveEntities()
  129. {
  130. if(file_exists(g_save_file))
  131. delete_file(g_save_file);
  132. new f = fopen(g_save_file, "wt");
  133.  
  134. new data[36];
  135.  
  136. for(new i = 0; i < g_total; i++)
  137. {
  138. formatex(data, 35, "^"%s^"^n", ents[i]);
  139.  
  140. fputs(f, data);
  141. }
  142.  
  143. fclose(f);
  144.  
  145. return 1;
  146. }
  147.  
  148. GetAimAtEnt(plr)
  149. {
  150. static Float:start[3], Float:view_ofs[3], Float:dest[3], i;
  151.  
  152. pev(plr, pev_origin, start);
  153. pev(plr, pev_view_ofs, view_ofs);
  154.  
  155. for( i = 0; i < 3; i++ )
  156. start[i] += view_ofs[i];
  157.  
  158. pev(plr, pev_v_angle, dest);
  159. engfunc(EngFunc_MakeVectors, dest);
  160. global_get(glb_v_forward, dest);
  161.  
  162. for( i = 0; i < 3; i++ )
  163. {
  164. dest[i] *= 9999.0;
  165. dest[i] += start[i];
  166. }
  167.  
  168. engfunc(EngFunc_TraceLine, start, dest, DONT_IGNORE_MONSTERS, plr, 0);
  169.  
  170. return get_tr2(0, TR_pHit);
  171. }
  172.  
  173. stock print_color(const id, const input[], any:...)
  174. {
  175. new count = 1, players[32];
  176. static msg[191];
  177. vformat(msg, 190, input, 3);
  178.  
  179. replace_all(msg, 190, "!g", "^4");
  180. replace_all(msg, 190, "!y", "^1");
  181. replace_all(msg, 190, "!t", "^3");
  182.  
  183. if (id) players[0] = id; else get_players(players, count, "ch");
  184. {
  185. for (new i = 0; i < count; i++)
  186. {
  187. if (is_user_connected(players[i]))
  188. {
  189. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
  190. write_byte(players[i]);
  191. write_string(msg);
  192. message_end();
  193. }
  194. }
  195. }
  196. return PLUGIN_HANDLED;
  197. }


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Entitys Robbanó Tárgyak
HozzászólásElküldve:2015.09.19. 23:43 
Offline
Fórum Moderátor
Avatar

Csatlakozott:2014.05.01. 13:18
Hozzászólások:628
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 105 alkalommal
Ez csodálatos lenne, csak egy probléma még akad vele, mégpedig hogy fa c4-től felrobban, ami nem baj ez így pont jó is lenne, de a követekző kör elején már egyáltalán nem jelennek meg a dobozok. :C


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése: Rendezés 
Új téma nyitása Hozzászólás a témához  [5 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 29 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole