hlmod.hu
https://hlmod.hu/

Plugin Átírás
https://hlmod.hu/viewtopic.php?f=24&t=31103
Oldal: 1 / 1

Szerző:  Zolika_36 [ 2021.06.18. 13:54 ]
Hozzászólás témája:  Plugin Átírás

Sziasztok!
Megint egy ZeneKészlet pluginnal fordulok hozzátok. :D
A plugin lényege:
- Egy menüben tudsz kiválasztani zenéket.
- A kiválasztott zene egyből lejátszásra kerül.
- Kör végén lejátszik egy Random zenét.

Célom:

--> A menüs dolog ne változzon.
--> A kiválasztott zene CSAK körvégén játszódjon le!
--> CSAK annak a játékosnak játszódjon le a zene kör végén, aki abban a körben a legjobb játékos volt!

Remélem érthető!
Köszönöm Szépen! :)

Csatolmányok:
zenekeszlet.sma [1.78 KiB]
Letöltve 44 alkalommal.

Szerző:  HellEnergY [ 2021.06.18. 15:53 ]
Hozzászólás témája:  Re: Plugin Átírás

Zolika_36 írta:
Sziasztok!
--> A menüs dolog ne változzon.
--> A kiválasztott zene CSAK körvégén játszódjon le!
--> CSAK annak a játékosnak játszódjon le a zene kör végén, aki abban a körben a legjobb játékos volt!


Szia,

  1. #include <amxmodx>
  2. #include <amxmisc>
  3.  
  4. new g_iZeneKibe[33][11];
  5. new g_iLegjobb[33];
  6. new iIndex;
  7. new g_iMaxPlayers;
  8. enum _:eAdat {
  9.     Zene[128],
  10.     ZeneCim[128]
  11. };
  12.  
  13. new const Zenek[][eAdat] = {
  14.     // Mappa/Zene.mp3     Zene neve
  15.     { "music/1.mp3", "M.R.K Mix 1", },
  16.     { "music/2.mp3", "M.R.K Mix 2", },
  17.     { "music/3.mp3", "M.R.K Mix 3", },
  18.     { "music/4.mp3", "M.R.K Mix 4", },
  19.     { "music/5.mp3", "M.R.K Mix 5", },
  20.     { "music/6.mp3", "M.R.K Mix 6", },
  21.     { "music/7.mp3", "M.R.K Mix 7", },
  22.     { "music/8.mp3", "M.R.K Mix 8", },
  23.     { "music/9.mp3", "M.R.K Mix 9", },
  24.     { "music/10.mp3","M.R.K Mix 10", }
  25. };
  26.  
  27. public plugin_init()
  28. {
  29.     register_plugin("Music system", "1.0", "Ricsike34");
  30.     register_clcmd("say /zene", "zenemenu");
  31.     register_event("DeathMsg", "halal", "a");
  32.    
  33.     g_iMaxPlayers = get_maxplayers();
  34.    
  35.     register_logevent("LegjobbEllenorzes", 2, "1=Round_End");
  36.     register_logevent("Reset", 2, "1=Round_Start");
  37. }
  38. public reset()
  39. {
  40.     for(new i = 0; i < g_iMaxPlayers; i++)
  41.         g_iLegjobb[i] = 0;
  42. }
  43. public plugin_precache()
  44. {
  45.     for(new i; i<sizeof(Zenek); i++)
  46.         precache_sound(Zenek[i][Zene])
  47. }
  48. public halal()
  49. {
  50.     new iGyilkos = read_data(1);
  51.     new iAldozat = read_data(2);
  52.    
  53.     if(iGyilkos == iAldozat || !iAldozat || !iGyilkos)
  54.         return PLUGIN_HANDLED;
  55.    
  56.     g_iLegjobb[iGyilkos]++;
  57.    
  58.     return PLUGIN_HANDLED;
  59. }
  60. public LegjobbEllenorzes(id)
  61. {
  62.     for(new i = 0; i < g_iMaxPlayers; i++)
  63.         Legjobb(i);
  64. }
  65. public Legjobb(id)
  66. {
  67.     new iMax;
  68.     for(new i = 0; i < g_iMaxPlayers; i++)
  69.     {
  70.         if(g_iLegjobb[i] > iMax)
  71.         {
  72.             iMax = g_iLegjobb[i];
  73.             iIndex = i;
  74.         }
  75.     }
  76.     Lejatszas(iIndex);
  77. }
  78. public Lejatszas(id)
  79. {
  80.     new sMp3[96], iRnd = 0;
  81.     for(new i = 0; i < 11; i++)
  82.     {
  83.         iRnd = random_num(0, 11);
  84.         if(g_iZeneKibe[iIndex][i] == 1)
  85.         {
  86.             formatex(sMp3, charsmax(sMp3), "sound/%s", Zenek[iRnd][Zene]);
  87.             client_cmd(id, "mp3 play %s", sMp3);
  88.             break;
  89.         }
  90.         else
  91.             continue;
  92.     }
  93. }
  94. public zenekeszlet(id)
  95. {
  96.     new sCim[512], iMenu, sSor[8];
  97.     format(sCim, charsmax(sCim), "ZENEMENU \r- \dZene készlet")
  98.     iMenu = menu_create(sCim, "keszlet_h")
  99.    
  100.     for(new i;i < sizeof(Zenek); i++)
  101.     {
  102.         num_to_str(i, sSor, charsmax(sSor));
  103.         formatex(sCim, charsmax(sCim), "%s", Zenek[i][ZeneCim]);
  104.         menu_additem(iMenu, sCim, sSor);
  105.     }
  106.    
  107.     menu_display(id,  iMenu, 0)
  108.     return PLUGIN_HANDLED
  109. }
  110. public keszlet_h(id,  iMenu, iItem)
  111. {
  112.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  113.     new sData[10], sName[64];
  114.     new iAccess, iCallback;
  115.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  116.     new iKey = str_to_num(sData);
  117.    
  118.     if(g_iZeneKibe[id][iKey] == 1)
  119.     {
  120.         client_print_color(id, print_team_default, "Kikapcsoltad a(z) %s zenét.",  Zenek[iKey][Zene]);
  121.         g_iZeneKibe[id][iKey] = 0;
  122.     }
  123.     else
  124.     {
  125.         client_print_color(id, print_team_default, "Bekapcsoltad a(z) %s zenét.", Zenek[iKey][Zene]);
  126.         g_iZeneKibe[id][iKey] = 1;
  127.     }
  128. }
  129. public client_putinserver(id)
  130. {
  131.     if(is_user_bot(id))return;
  132.    
  133.     for(new i = 0; i < 11; i++)
  134.         g_iZeneKibe[id][i] = 0;
  135.    
  136.     g_iLegjobb[id] = 0;
  137. }


Egyáltalán nem próbáltam meg, csak annyit néztem hogy lefordul-e.
Biztos van benne hiba, szóval miután kipróbáltad és nem jó, kérlek írd le miért nem.

Szerző:  Zolika_36 [ 2021.06.19. 17:59 ]
Hozzászólás témája:  Re: Plugin Átírás

HellEnergY írta:
Zolika_36 írta:
Sziasztok!
--> A menüs dolog ne változzon.
--> A kiválasztott zene CSAK körvégén játszódjon le!
--> CSAK annak a játékosnak játszódjon le a zene kör végén, aki abban a körben a legjobb játékos volt!


Szia,

  1. #include <amxmodx>
  2. #include <amxmisc>
  3.  
  4. new g_iZeneKibe[33][11];
  5. new g_iLegjobb[33];
  6. new iIndex;
  7. new g_iMaxPlayers;
  8. enum _:eAdat {
  9.     Zene[128],
  10.     ZeneCim[128]
  11. };
  12.  
  13. new const Zenek[][eAdat] = {
  14.     // Mappa/Zene.mp3     Zene neve
  15.     { "music/1.mp3", "M.R.K Mix 1", },
  16.     { "music/2.mp3", "M.R.K Mix 2", },
  17.     { "music/3.mp3", "M.R.K Mix 3", },
  18.     { "music/4.mp3", "M.R.K Mix 4", },
  19.     { "music/5.mp3", "M.R.K Mix 5", },
  20.     { "music/6.mp3", "M.R.K Mix 6", },
  21.     { "music/7.mp3", "M.R.K Mix 7", },
  22.     { "music/8.mp3", "M.R.K Mix 8", },
  23.     { "music/9.mp3", "M.R.K Mix 9", },
  24.     { "music/10.mp3","M.R.K Mix 10", }
  25. };
  26.  
  27. public plugin_init()
  28. {
  29.     register_plugin("Music system", "1.0", "Ricsike34");
  30.     register_clcmd("say /zene", "zenemenu");
  31.     register_event("DeathMsg", "halal", "a");
  32.    
  33.     g_iMaxPlayers = get_maxplayers();
  34.    
  35.     register_logevent("LegjobbEllenorzes", 2, "1=Round_End");
  36.     register_logevent("Reset", 2, "1=Round_Start");
  37. }
  38. public reset()
  39. {
  40.     for(new i = 0; i < g_iMaxPlayers; i++)
  41.         g_iLegjobb[i] = 0;
  42. }
  43. public plugin_precache()
  44. {
  45.     for(new i; i<sizeof(Zenek); i++)
  46.         precache_sound(Zenek[i][Zene])
  47. }
  48. public halal()
  49. {
  50.     new iGyilkos = read_data(1);
  51.     new iAldozat = read_data(2);
  52.    
  53.     if(iGyilkos == iAldozat || !iAldozat || !iGyilkos)
  54.         return PLUGIN_HANDLED;
  55.    
  56.     g_iLegjobb[iGyilkos]++;
  57.    
  58.     return PLUGIN_HANDLED;
  59. }
  60. public LegjobbEllenorzes(id)
  61. {
  62.     for(new i = 0; i < g_iMaxPlayers; i++)
  63.         Legjobb(i);
  64. }
  65. public Legjobb(id)
  66. {
  67.     new iMax;
  68.     for(new i = 0; i < g_iMaxPlayers; i++)
  69.     {
  70.         if(g_iLegjobb[i] > iMax)
  71.         {
  72.             iMax = g_iLegjobb[i];
  73.             iIndex = i;
  74.         }
  75.     }
  76.     Lejatszas(iIndex);
  77. }
  78. public Lejatszas(id)
  79. {
  80.     new sMp3[96], iRnd = 0;
  81.     for(new i = 0; i < 11; i++)
  82.     {
  83.         iRnd = random_num(0, 11);
  84.         if(g_iZeneKibe[iIndex][i] == 1)
  85.         {
  86.             formatex(sMp3, charsmax(sMp3), "sound/%s", Zenek[iRnd][Zene]);
  87.             client_cmd(id, "mp3 play %s", sMp3);
  88.             break;
  89.         }
  90.         else
  91.             continue;
  92.     }
  93. }
  94. public zenekeszlet(id)
  95. {
  96.     new sCim[512], iMenu, sSor[8];
  97.     format(sCim, charsmax(sCim), "ZENEMENU \r- \dZene készlet")
  98.     iMenu = menu_create(sCim, "keszlet_h")
  99.    
  100.     for(new i;i < sizeof(Zenek); i++)
  101.     {
  102.         num_to_str(i, sSor, charsmax(sSor));
  103.         formatex(sCim, charsmax(sCim), "%s", Zenek[i][ZeneCim]);
  104.         menu_additem(iMenu, sCim, sSor);
  105.     }
  106.    
  107.     menu_display(id,  iMenu, 0)
  108.     return PLUGIN_HANDLED
  109. }
  110. public keszlet_h(id,  iMenu, iItem)
  111. {
  112.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  113.     new sData[10], sName[64];
  114.     new iAccess, iCallback;
  115.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  116.     new iKey = str_to_num(sData);
  117.    
  118.     if(g_iZeneKibe[id][iKey] == 1)
  119.     {
  120.         client_print_color(id, print_team_default, "Kikapcsoltad a(z) %s zenét.",  Zenek[iKey][Zene]);
  121.         g_iZeneKibe[id][iKey] = 0;
  122.     }
  123.     else
  124.     {
  125.         client_print_color(id, print_team_default, "Bekapcsoltad a(z) %s zenét.", Zenek[iKey][Zene]);
  126.         g_iZeneKibe[id][iKey] = 1;
  127.     }
  128. }
  129. public client_putinserver(id)
  130. {
  131.     if(is_user_bot(id))return;
  132.    
  133.     for(new i = 0; i < 11; i++)
  134.         g_iZeneKibe[id][i] = 0;
  135.    
  136.     g_iLegjobb[id] = 0;
  137. }


Egyáltalán nem próbáltam meg, csak annyit néztem hogy lefordul-e.
Biztos van benne hiba, szóval miután kipróbáltad és nem jó, kérlek írd le miért nem.




Szia!

Észlelt hibák:
1. Akármilyen zenét állítok be, mindig az adott szöveget kapom chatbe::
Bekapcsoltad a(z) 1.mp3 zenét!

2. Ha még 1x beállítok egy zenét akkor ugyanazt irja ki mint fent csak ezúttal eképpen:

Kikapcsoltad a(z) 1.mp3 zenét!

3. Kör végén random zenét játszik le.


Célom:

Kör végén a legjobb játékos által kiválasztott zene kerüljön lejátszásra!

Köszönöm Szépen! :)

Szerző:  theglorious [ 2021.06.25. 16:32 ]
Hozzászólás témája:  Re: Plugin Átírás

 ! Moderátori megjegyzés (theglorious):
Rossz témanév és rossz hely miatt zárva, helyezve.

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/