seroff

Menu emotions 1.0 By KEK+Seroff

Jan 10th, 2017
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.14 KB | None | 0 0
  1. #include <amxmodx>
  2.  
  3. const keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<9);
  4.  
  5. new szEmoMessage, modelgibs[][]={
  6. "sprites/J-Emotions/1.spr",
  7. "sprites/J-Emotions/2.spr",
  8. "sprites/J-Emotions/3.spr",
  9. "sprites/J-Emotions/4.spr",
  10. "sprites/J-Emotions/5.spr",
  11. "sprites/J-Emotions/6.spr",
  12. "sprites/J-Emotions/7.spr",
  13. "sprites/J-Emotions/8.spr"
  14. },pModelgibs[10];
  15.  
  16. public plugin_init()
  17. {
  18. register_plugin("Menu emotions", "1.0", "KEK+Seroff");
  19. register_menucmd(register_menuid("Menu 1",0),keys,"func_menu");
  20. register_clcmd("say /emotions", "server_menu" );
  21. szEmoMessage=register_cvar( "emomessage", "1" );
  22. }
  23.  
  24. public client_putinserver(id)
  25. {
  26. if ( get_pcvar_num( szEmoMessage ) )
  27. {
  28. set_task( 25.0, "EmoMessage", id );
  29. }
  30. }
  31.  
  32. public plugin_precache()
  33. {
  34. for(new i=0;i<sizeof(modelgibs);i++){
  35. pModelgibs[i]=precache_model(modelgibs[i]);
  36. }
  37. }
  38.  
  39. public EmoMessage( id ){ ColorChat(id, "^1[^4EMOTIONS^1] ^1Нажмите ^3F ^1(или ^4/emotions ^1в чат) что бы открыть меню ^3Эмоции"); }
  40.  
  41. public server_menu(id)
  42. {
  43. new name[32];
  44. get_user_name(id, name, 31);
  45. static menu[650], iLen;
  46. iLen = 0;
  47. iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\r[\yEMO\r] \wМеню эмоции^n\r[\yEMO\r] \wПривет \r%s^n^n", name);
  48. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y1\r] \wЗлость^n");
  49. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y2\r] \wШок^n");
  50. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y3\r] \wЛюбовь^n");
  51. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y4\r] \wГрусть^n");
  52. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y5\r] \wПоцелуй^n");
  53. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y6\r] \wУлыбка^n");
  54. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y7\r] \wСогласие^n");
  55. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y8\r] \wСмех^n^n");
  56. iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r[\y0\r] \wВыход");
  57. show_menu(id, keys, menu, -1, "Menu 1");
  58. return 1;
  59. }
  60.  
  61. public func_menu(id, key)
  62. {
  63. if( task_exists( id ) )
  64. {
  65. remove_sprite( id );
  66. remove_task( id );
  67. }
  68. new origin[3];
  69. if(key==6){
  70. get_user_origin(id,origin,7);
  71. }else{
  72. get_user_origin(id,origin,3);
  73. }
  74. message_begin( MSG_ALL, SVC_TEMPENTITY );
  75. write_byte( 124 );
  76. write_byte( id );
  77. write_coord( 45 );
  78. write_short( pModelgibs[key]);
  79. write_short( 100 );
  80. message_end();
  81. set_task( 2.5, "remove_sprite", id );
  82. }
  83.  
  84. public remove_sprite( id )
  85. {
  86. message_begin( MSG_ALL, SVC_TEMPENTITY );
  87. write_byte( 125 );
  88. write_byte( id );
  89. message_end();
  90. }
  91.  
  92. stock ColorChat(const id, const input[], any:...)
  93. {
  94. static msg[191],count = 1, players[32];
  95. vformat(msg, 190, input, 3);
  96. format(msg, sizeof(msg), "%s", msg);
  97. if (id) players[0] = id; else get_players(players, count, "ch")
  98. {
  99. for (new i = 0; i < count; i++)
  100. {
  101. if (is_user_connected(players[i]))
  102. {
  103. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
  104. write_byte(players[i]);
  105. write_string(msg);
  106. message_end();
  107. }
  108. }
  109. }
  110. }
Advertisement
Add Comment
Please, Sign In to add comment