搜索
查看: 9391|回复: 15

求一个手雷爆炸效果插件

[复制链接]
发表于 2009-5-17 22:15:59 | 显示全部楼层 |阅读模式 来自 中国–广东–深圳
在网上找到好多手雷效果的spr文件,但找了论坛没有类似这样的插件,麻烦那位能提供下?
发表于 2009-5-18 22:24:02 | 显示全部楼层 来自 中国–广东–广州–白云区
本帖最后由 点通粉丝 于 2009-5-18 22:26 编辑

手雷烟花爆炸效果插件
  1. /*
  2.                         New HeNades Effects
  3.                        Version 0.1 by SAMURAI
  4.        
  5.    * Plugin details:
  6. - The basic sprite from hegrenade explode was replaced with new 13 sprites
  7. New effects, colors, etc
  8.                
  9.    * Required Modules:
  10. - Csx
  11. - Fakemeta

  12.    * Cvars:
  13. - None

  14.    * Admin Commands:
  15. - None


  16. Have a nice day now
  17. */

  18. #include <amxmodx>
  19. #include <amxmisc>
  20. #include <fakemeta>
  21. #include <csx>

  22. #define PLUGIN_NAME "New HeNades Effects"
  23. #define PLUGIN_VERSION "0.1"
  24. #define PLUGIN_AUTHOR "SAMURAI"

  25. // required sprites for plugin
  26. new const g_sprites[][] =
  27. {
  28.         "sprites/fexplo1.spr",
  29.         "sprites/fexplo1.spr"
  30. }


  31. new gSpriteIndex[sizeof g_sprites];


  32. /******************************************************************
  33. ********************** AMXMODX PLUGIN *****************************
  34. ******************************************************************/

  35. public plugin_init()
  36. {
  37.         // Register the plugin
  38.         register_plugin(PLUGIN_NAME,PLUGIN_VERSION,PLUGIN_AUTHOR);
  39.    
  40.    
  41.         // Forward Fakemeta Think
  42.         register_forward(FM_Think,"fw_think");

  43. }


  44. // plugin_precache forward
  45. public plugin_precache()
  46. {
  47.        
  48.         for(new i = 0; i < sizeof g_sprites; i++)
  49.                 gSpriteIndex[i] = engfunc(EngFunc_PrecacheModel,g_sprites[i]);
  50.                
  51. }

  52. /**************************************
  53. grenade_throw CSX Forward           //
  54. It's called when an user throw      //
  55. a grenade                           //
  56. **************************************/
  57. public grenade_throw(id,iGren,wid)
  58. {
  59.        
  60.         // check if grenade isn't a HeGrenade
  61.         if(wid != CSW_HEGRENADE)
  62.                 return PLUGIN_CONTINUE;
  63.        
  64.         // check if Grenade entity isn't a valid entity
  65.         if(!pev_valid(iGren))
  66.                 return PLUGIN_CONTINUE;
  67.        
  68.         // set a new classname to HeGrenade
  69.         set_pev(iGren,pev_classname,"fake_hegren");
  70.    
  71.         // Make it to explode after 1.6 seconds
  72.         set_task(1.6,"gre_explode",iGren);
  73.        
  74.         return PLUGIN_CONTINUE;
  75.        
  76. }


  77. /*****************************************
  78. FM Think Fakemeta Forward              //
  79. On this case, help to stop hegrenade   //
  80. from original explosion               //
  81. ***************************************/
  82. public fw_think(ent)
  83. {
  84.         if(!pev_valid(ent))
  85.                 return FMRES_IGNORED;
  86.         
  87.         if(!pev(ent,pev_bInDuck))
  88.                 return FMRES_IGNORED;
  89.    
  90.         new class[32];
  91.         pev(ent,pev_classname,class,31);
  92.        
  93.         if(equali(class,"fake_hegren"))
  94.                 return FMRES_SUPERCEDE;
  95.         
  96.        
  97.         return FMRES_IGNORED;
  98.         
  99. }


  100. /*****************************************
  101. This is called when hegrenade is       //
  102. explode with new sprites               //
  103. ***************************************/
  104. public gre_explode(ent)
  105. {
  106.         // check if entity isn't valid
  107.         if(!pev_valid(ent))
  108.                 return;
  109.         
  110.         // new variable for origin and get origin of entity
  111.         static Float:origin[3];
  112.         pev(ent,pev_origin,origin);
  113.    
  114.        
  115.         message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
  116.         write_byte(TE_EXPLOSION); // TE_EXPLOSION
  117.         write_coord(floatround(origin[0])); // origin x
  118.         write_coord(floatround(origin[1])); // origin y
  119.         write_coord(floatround(origin[2])); // origin z
  120.         write_short(gSpriteIndex[random(sizeof g_sprites)]); // sprites
  121.         write_byte(40); // scale in 0.1's
  122.         write_byte(30); // framerate
  123.         write_byte(TE_EXPLFLAG_NONE); // flags
  124.         message_end(); // message end
  125. }
复制代码
1# eason39

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
回复

使用道具 举报

 楼主| 发表于 2009-5-20 12:43:06 | 显示全部楼层 来自 中国–广东–深圳–宝安区
谢谢!!
回复

使用道具 举报

发表于 2009-5-20 19:01:22 | 显示全部楼层 来自 中国–山东–淄博
点通粉丝 真地道!!
发就来原码!!
支持!!!
回复

使用道具 举报

发表于 2010-12-21 15:05:20 | 显示全部楼层 来自 中国–河北–石家庄
顶上去 好东西
回复

使用道具 举报

发表于 2010-12-21 15:07:04 | 显示全部楼层 来自 中国–河北–石家庄
编译不了啊??
回复

使用道具 举报

发表于 2010-12-22 02:43:50 | 显示全部楼层 来自 中国–浙江–嘉兴–海宁市
[img][/img]

这个爆炸效果怎么样?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
回复

使用道具 举报

发表于 2010-12-22 02:44:42 | 显示全部楼层 来自 中国–浙江–嘉兴–海宁市
[img][/img]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
回复

使用道具 举报

发表于 2010-12-25 09:38:28 | 显示全部楼层 来自 中国–四川–泸州
9527的更经典,附件呢?
回复

使用道具 举报

发表于 2011-9-14 13:57:50 | 显示全部楼层 来自 中国–河北–衡水–冀州区
找这东西很久了,想不到是很久以前的
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

快速回复 返回顶部 返回列表