hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.28. 15:12



Jelenlévő felhasználók

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

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Google [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  [ 9 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Befejezetlen DeathRun menü.
HozzászólásElküldve: 2017.01.15. 17:03 
Offline
Félisten
Avatar

Csatlakozott: 2016.03.06. 14:20
Hozzászólások: 964
Megköszönt másnak: 102 alkalommal
Megköszönték neki: 134 alkalommal
Üdvözletem!

Mivel rám írtatok 1 páran , és én nem akarom egyenként elküldeni mindenkinek, de ide kirakom egyéb topic-ba akinek kell használja.., modellt mindenki magának állít elő / tölt le, vagy felmegy az én szerveremre.


Forrás
  1. #define KESZITO "s[T]* Levii"
  2. #define STEAMOM "http://steamcommunity.com/id/stuplevii"
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <fun>
  6. #include <hamsandwich>
  7. #include <cstrike>
  8. #include <fakemeta>
  9.  
  10. #define MAX 5   // Átírni ha több USP-t írsz vagy veszel el belőle
  11.  
  12. #define MinimumPont 1
  13. #define MaximumPont 3
  14.  
  15. #define Prefx = "DeathRun" // Üzenet Prefix
  16.  
  17.  
  18. new Szint[33],Xp[33],Pont[33],Olesek[33],Elet[33]
  19.  
  20. new knife[33]
  21. new const Kesek[][][] = {
  22.     // Kes Neve |    Szint |  Eleresi út
  23.     { "Alap KĂ©s","\rMegszerezve",       "models/v_knife.mdl" },  // 0
  24.     { "Gyors KĂ©s | \d(+5% SebessĂ©g)",  "\r5.Szintol",       "models/st_deathrun/kes/v_gyors.mdl" },  // 1
  25.     { "Gravitacio KĂ©s |\d(-20% Grav)",    "\r10.Szintol",      "models/st_deathrun/kes/v_gravi.mdl" }, // 2
  26.     { "SzáguldĂł KĂ©s |\d(+15% sebesseg)",  "\r15.Szintol",      "models/st_deathrun/kes/v_szaguldo_v2.mdl" }, // 3
  27.     { "SebzĂ©s KĂ©s |\r\d(+30% SebzĂ©s)",  "\r20. Szintol",     "models/st_deathrun/kes/v_sebzes.mdl" } // 4
  28. };
  29.  
  30. new const Level[] = {0,  5,  10, 15 , 20}
  31. new const Float:sebesseg[] = {250.0,  260.0 ,  250.0  ,  280.0 ,  250.0}
  32. new const Float:gravity[] = {1.0 ,  1.0 ,  0.84 ,  1.0 ,  1.0}
  33.  
  34.  
  35. new kivalasztottUSP[33]
  36. new const Usp[][][] = {
  37.     // Usp Neve |    Pont |  Eleresi Ăşt
  38.     { "Sima USP","", "models/v_usp.mdl" }, // 0
  39.     { "Spitfire USP | \y(+1.2x DMG)" ,"250 Pont", "models/st_deathrun/usp/v_spitfire.mdl" },  // 1
  40.     { "Tűz USP | \y(+1.3x DMG)" ,"350 Pont", "models/st_deathrun/usp/v_tuz.mdl" }, // 2
  41.     { "TerepMintás USP | \y(+1.5x DMG)" ,"750 Pont","models/st_deathrun/usp/v_terepmintas.mdl" }, // 3
  42.     { "EzĂĽst USP | \y(+1.6x DMG)" ,"1250 Pont", "models/st_deathrun/usp/v_ezust.mdl" } // 4
  43. };
  44.  
  45. new const Points[] = {0,250,350, 750,1250, 1750, 2000, 2500, 2950, 3500,4550,5000,8000,15000,20000}
  46. new const Float:dmg[] = {1.0, 1.2, 1.3, 1.5, 1.6, 1.8, 2.0, 2.1, 2.2, 2.3, 2.4, 2.4, 2.5, 2.5 , 2.6}
  47. new pistol[sizeof(Usp)][33]
  48.  
  49. public plugin_init(){
  50.     register_plugin(" DeathRun Menu ", " 1.0 ", " s[T]* Levii ");
  51.    
  52.     register_clcmd( "chooseteam","Mymenu" )
  53.     register_clcmd( "say /menu","Mymenu" )
  54.    
  55.     register_event( "CurWeapon", "SwitchGuns", "be", "1=1" )
  56.     RegisterHam( Ham_TakeDamage, "player", "damagetake" )
  57.    
  58.     register_dictionary( "deathrunmenu.txt" );
  59. }
  60. public client_death(Killer, Victim)
  61. {
  62.     if(Killer == Victim)
  63.     {
  64.         return PLUGIN_HANDLED;
  65.     }
  66.    
  67.     Olesek[Killer]++;
  68.    
  69.    
  70.     new pPont
  71.     pPont += random_num(MinimumPont, MaximumPont); //A szerkesztéshez a DEFINE-t írd át.
  72.     Pont[Killer] += pPont;
  73.    
  74.     set_hudmessage(255, 255, 255, -1.0, 0.15, 0, 6.0, 2.0);
  75.     show_hudmessage(Killer, "%L", LANG_PLAYER, "KAPOTTPONT", pPont);
  76.    
  77.     if(Szint[Killer] >= 0 && Szint[Killer] < 5){
  78.         Xp[Killer] += random_num(20,30)
  79.     }
  80.     else if(Szint[Killer] >= 5 && Szint[Killer] < 100){
  81.         Xp[Killer] += random_num(1,3)
  82.     }
  83.    
  84.     if(Xp[Killer] >= 100)
  85.     {
  86.         Szint[Killer]++
  87.         Xp[Killer] -= 100
  88.     }
  89.    
  90.     return PLUGIN_CONTINUE;
  91. }
  92. public Mymenu(id)
  93. {
  94.     static String[512];
  95.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "FOMENUCIM", Szint[id],Xp[id],Pont[id]);
  96.     new menu = menu_create(String, "my_handler" );
  97.    
  98.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "FOMENU1");
  99.     menu_additem(menu, String, "1");
  100.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "FOMENU2");
  101.     menu_additem(menu, String, "2");
  102.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "FOMENU3");
  103.     menu_additem(menu, String, "3");
  104.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "FOMENU4");
  105.     menu_additem(menu, String, "4");
  106.    
  107.     menu_display(id, menu, 0);
  108. }
  109. public my_handler(id, menu, item)
  110. {
  111.     if(item == MENU_EXIT)
  112.     {
  113.         menu_destroy(menu);
  114.         return;
  115.     }
  116.     new data[9], name[64], Gomb;
  117.     new access, callback;
  118.     menu_item_getinfo(menu, item, access, data,charsmax(data),
  119.     name, charsmax(name), callback);
  120.    
  121.     Gomb = str_to_num(data);
  122.    
  123.     if(Gomb == 1)
  124.         MyKnife(id)
  125.     if(Gomb == 2)
  126.         MyUsp(id)
  127.     if(Gomb == 3)
  128.         MyShop(id)
  129.     if(Gomb == 4)
  130.         Myinformation(id)
  131. }
  132. public MyShop(id)
  133. {
  134.     static String[512];
  135.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "FOMENUCIM", Szint[id],Xp[id],Pont[id]);
  136.     new menu = menu_create(String, "myshop_handler" );
  137.    
  138.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "BOLT0");
  139.     menu_additem(menu, String, "0");
  140.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "BOLT1");
  141.     menu_additem(menu, String, "1");
  142.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "BOLT2");
  143.     menu_additem(menu, String, "2");
  144.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "BOLT3");
  145.     menu_additem(menu, String, "3");
  146.     menu_display(id, menu, 0);
  147. }
  148. public myshop_handler(id, menu, item)
  149. {
  150.     if(item == MENU_EXIT)
  151.     {
  152.         menu_destroy(menu);
  153.         return;
  154.     }
  155.     new data[9], name[64], Gomb;
  156.     new access, callback;
  157.     menu_item_getinfo(menu, item, access, data,charsmax(data),
  158.     name, charsmax(name), callback);
  159.    
  160.     Gomb = str_to_num(data);
  161.    
  162.     if(Gomb == 0){
  163.         if(Szint[id] < 15 && Pont[id] >= 120)
  164.         {
  165.             Szint[id] += 1;Pont[id] -=120
  166.             print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  167.         }
  168.         else if(Pont[id] < 120 && Szint[id] < 15)
  169.             print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "KEVESPONT")  
  170.         else if(Szint[id] >= 15)
  171.             print_color(id, "!g[DeathRun]!y Te nem tudsz továbbá szintet venni, mert elĂ©rted a 15.szintet!")
  172.     }
  173.     if(Gomb == 1){
  174.         if(Pont[id] >= 24 )
  175.         {
  176.             Pont[id] -= 24;set_user_health(id,get_user_health(id) + 25)
  177.             print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  178.         }
  179.         else{ print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "KEVESPONT")
  180.         }
  181.     }
  182.     if(Gomb ==2){
  183.         if(Pont[id] >= 19)
  184.         {
  185.             Pont[id] -= 19;set_user_armor(id,get_user_armor(id) + 25)
  186.             print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  187.         }
  188.         else{ print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "KEVESPONT")
  189.         }
  190.     }
  191.     if(Gomb ==3){
  192.         if(Pont[id] >= 6 )
  193.         {
  194.             Elet[id] += 1;Pont[ id ] -= 6
  195.             print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  196.         }
  197.         else{ print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "KEVESPONT")
  198.         }
  199.     }
  200. }
  201. public MyKnife(id)
  202. {
  203.     new txt[128]
  204.     static String[512];
  205.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "FOMENUCIM", Szint[id],Xp[id],Pont[id]);
  206.     new menu = menu_create(String, "myknife_handler" );
  207.    
  208.     for(new i; i<sizeof(Kesek) ; i++)
  209.     {
  210.         formatex(txt, charsmax(txt), "%s%s \d%s", knife[id] == i ? "\y" : "\w", Kesek[i][0], Szint[id] >= Level[i] ? "\r[Szint Elerve]" : Kesek[i][1])
  211.         menu_additem(menu, txt, "", 0)
  212.     }
  213.    
  214.     menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  215.     menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  216.     menu_setprop(menu, MPROP_NEXTNAME, "Következo");
  217.     menu_setprop(menu, MPROP_EXITNAME, "KilĂ©pĂ©s");
  218.    
  219.     menu_display(id, menu, 0)
  220.    
  221. }
  222. public myknife_handler(id, menu, item)
  223. {
  224.     if(item == MENU_EXIT)
  225.     {
  226.         menu_destroy(menu);
  227.         return PLUGIN_HANDLED;
  228.     }
  229.     if(Szint[id] >= Level[item]){
  230.         knife[id] = item
  231.         print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  232.         MyKnife(id)
  233.     }
  234.     else{
  235.         print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "KEVESSZINT")
  236.         MyKnife(id)
  237.     }
  238.     menu_destroy(menu);
  239.     return PLUGIN_HANDLED;
  240.    
  241. }
  242. public MyUsp(id)
  243. {
  244.     new txt[128],txt1[128]
  245.     static String[512];
  246.     formatex(String, charsmax(String), "%L", LANG_PLAYER, "FOMENUCIM", Szint[id],Xp[id],Pont[id]);
  247.     new menu = menu_create(String, "myusp_handler" );
  248.    
  249.     for(new i; i<sizeof(Usp) ; i++)
  250.     {
  251.         formatex(txt1, charsmax(txt1), "\r[Megszerezve]",pistol[i][id])
  252.         formatex(txt, charsmax(txt), "%s%s \r%s",kivalasztottUSP[id] == i ? "\r" : "\w",Usp[i][0], pistol[i][id] >= 1 ? txt1 : Usp[i][1],pistol[i][id])
  253.         menu_additem(menu, txt, "", 0)
  254.     }
  255.    
  256.     menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  257.     menu_setprop(menu, MPROP_NEXTNAME, "Következo");
  258.     menu_setprop(menu, MPROP_EXITNAME, "KilĂ©pĂ©s");
  259.    
  260.     menu_display(id, menu, 0)
  261.    
  262. }
  263. public myusp_handler(id, menu, item)
  264. {
  265.     if(item == MENU_EXIT)
  266.     {
  267.         menu_destroy(menu);
  268.         return PLUGIN_HANDLED;
  269.     }
  270.     if(pistol[item][id] == 0){
  271.         if(Pont[id] >= Points[item])
  272.         {
  273.             print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  274.             pistol[item][id]++;
  275.             Pont[id] -= Points[item]
  276.             MyUsp(id)
  277.         }
  278.         else print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "KEVESPONT")
  279.     }
  280.     else {
  281.         kivalasztottUSP[id] = item
  282.         print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  283.         MyUsp(id)
  284.     }
  285.     menu_destroy(menu);
  286.     return PLUGIN_HANDLED;
  287. }
  288. public Myinformation( id )
  289. {
  290.    
  291.     new szMenuName[ 512 ]
  292.    
  293.     formatex( szMenuName, sizeof( szMenuName ) -1, "\y| \dDeathRun MenĂĽ\y|^n^n^n\y| \rKĂ©szĂ­tĹ‘je: \ds[T]* Levii\y| ^n \y| \rVerziĂł: \d1.0 \y|")
  294.    
  295.     show_menu( id, (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9), szMenuName, -1, "Myinformation_handler" );
  296. }
  297. public Myinformation_handler( id, iKey )
  298. {
  299.     switch( iKey )
  300.     {
  301.         case 0:
  302.         {
  303.            
  304.             Myinformation( id );
  305.         }
  306.        
  307.         case 1..9:    return;
  308.         }
  309. }
  310. public damagetake(victim, inflictor, attacker, Float:damage) {
  311.    
  312.     if(is_user_alive(attacker) && is_user_alive(victim))
  313.     {
  314.         if(get_user_weapon(attacker) == CSW_KNIFE && knife[attacker] == 4) SetHamParamFloat(4, damage * 1.3)
  315.         if(get_user_weapon(attacker) == CSW_USP) SetHamParamFloat(4, damage * dmg[kivalasztottUSP[attacker]])
  316.        
  317.     }
  318. }
  319. public SwitchGuns(id) {
  320.     switch(get_user_weapon(id)){
  321.         case CSW_KNIFE:{
  322.             set_pev(id, pev_viewmodel2, Kesek[knife[id]][2]);
  323.             set_user_maxspeed(id, sebesseg[knife[id]])
  324.             set_user_gravity(id, gravity[knife[id]])
  325.            
  326.         }
  327.         case CSW_USP: {
  328.             set_pev(id, pev_viewmodel2, Usp[kivalasztottUSP[id]][2]);
  329.             set_user_maxspeed(id, 250.0)
  330.             set_user_gravity(id, 1.0)
  331.         }
  332.     }
  333. }
  334. public plugin_precache(){
  335.     for(new i = 0; i < sizeof(Kesek); i++)
  336.         precache_model(Kesek[i][2])
  337.     for(new i = 0; i < sizeof(Usp); i++)
  338.         precache_model(Usp[i][2])
  339. }
  340. public Ujraeledes(id) {
  341.     if(!is_user_alive( id ))
  342.         if(Elet[id] >= 1 ) {
  343.         ExecuteHam(Ham_CS_RoundRespawn, id)
  344.         Elet[id] -=1
  345.         print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "UJRAELEDTEL")
  346.     }
  347. }
  348. public Eletem(id)
  349. {
  350.     print_color(id, "!g[DeathRun]!y %L ",Elet[id],LANG_PLAYER, "ELET")
  351. }
  352. public client_connect(id)
  353. {
  354.     betoltes(id)
  355.     Szint[id] = 0
  356.     Xp[id] = 0
  357.     Pont[id] = 0
  358.     Olesek[id] = 0
  359.     Elet[id] = 0
  360.     knife[id] = 0
  361.     kivalasztottUSP[id] = 0
  362.     for(new i=0; i <= MAX-1; i++)
  363.     {
  364.         pistol[i][id] = 0
  365.     }
  366. }
  367. public client_disconnect(id)
  368. {
  369.     mentes(id)
  370. }
  371. public mentes(id) {
  372.     if(is_user_connected(id))
  373.     {
  374.         new file[192], nm[32], mentes[512]
  375.         get_user_name(id, nm, 31)
  376.         replace_all(nm, 31, "/", "_")
  377.         replace_all(nm, 31, "?", "_")
  378.         replace_all(nm, 31, "!", "_")
  379.         replace_all(nm, 31, "*", "_")
  380.         replace_all(nm, 31, "#", "_")
  381.         replace_all(nm, 31, "=", "_")
  382.         replace_all(nm, 31, "-", "_")
  383.         replace_all(nm, 31, "+", "_")
  384.         replace_all(nm, 31, ",", "_")
  385.         replace_all(nm, 31, "@", "_")
  386.         replace_all(nm, 31, "&", "_")
  387.         replace_all(nm, 31, "{", "_")
  388.         replace_all(nm, 31, "}", "_")
  389.         replace_all(nm, 31, "~", "_")
  390.         replace_all(nm, 31, ":", "_")
  391.         replace_all(nm, 31, ".", "_")
  392.         replace_all(nm, 31, "<", "_")
  393.         replace_all(nm, 31, ">", "_")
  394.         replace_all(nm, 31, "|", "_")
  395.         formatex(file, charsmax(file), "addons/amxmodx/configs/deathrun/%s.ini", nm)
  396.         delete_file(file)
  397.         format(mentes, charsmax(mentes), "%d %d %d %d %d %d %d %d",Szint[id],Xp[id],Pont[id],Olesek[id],Elet[id],knife[id],kivalasztottUSP[id],pistol[id])
  398.         write_file(file, mentes)
  399.     }
  400. }
  401. public betoltes(id)
  402. {
  403.     if(is_user_connected(id))
  404.     {
  405.         new file[192], nm[32]
  406.         get_user_name(id, nm, 31)
  407.         replace_all(nm, 31, "/", "_")
  408.         replace_all(nm, 31, "?", "_")
  409.         replace_all(nm, 31, "!", "_")
  410.         replace_all(nm, 31, "*", "_")
  411.         replace_all(nm, 31, "#", "_")
  412.         replace_all(nm, 31, "=", "_")
  413.         replace_all(nm, 31, "-", "_")
  414.         replace_all(nm, 31, "+", "_")
  415.         replace_all(nm, 31, ",", "_")
  416.         replace_all(nm, 31, "@", "_")
  417.         replace_all(nm, 31, "&", "_")
  418.         replace_all(nm, 31, "{", "_")
  419.         replace_all(nm, 31, "}", "_")
  420.         replace_all(nm, 31, "~", "_")
  421.         replace_all(nm, 31, ":", "_")
  422.         replace_all(nm, 31, ".", "_")
  423.         replace_all(nm, 31, "<", "_")
  424.         replace_all(nm, 31, ">", "_")
  425.         replace_all(nm, 31, "|", "_")
  426.         formatex(file, charsmax(file), "addons/amxmodx/configs/deathrun/%s.ini", nm)
  427.         new file_pointer = fopen(file, "r")
  428.         if(!file_pointer)
  429.         {
  430.             write_file(file, "0 0 0 0 0 0 0 0 0")
  431.             return PLUGIN_HANDLED
  432.         }
  433.         fclose(file_pointer)
  434.         new lines = file_size(file, 1)
  435.         new a1[32], a2[32], a3[32], a4[32], a5[32], a6[32], a7[32], a8[32]
  436.         if(lines > 0)
  437.         {
  438.             new buff[512], len
  439.             read_file(file, lines=0, buff, charsmax(buff), len)
  440.             parse(buff, a1, 31, a2, 31, a3, 31, a4, 31, a5, 31, a6, 31, a7, 31, a8, 31)
  441.             Szint[id] = str_to_num(a1)
  442.             Xp[id] = str_to_num(a2)
  443.             Pont[id] = str_to_num(a3)
  444.             Olesek[id] = str_to_num(a4)
  445.             Elet[id] = str_to_num(a5)
  446.             knife[id] = str_to_num(a6)
  447.             kivalasztottUSP[id] = str_to_num(a7)
  448.            
  449.             for(new i=0; i <= MAX-1; i++)
  450.             {
  451.                 pistol[i][id] = str_to_num(a8)
  452.             }
  453.            
  454.            
  455.         }
  456.     }
  457.     return PLUGIN_HANDLED
  458. }
  459.  
  460. stock print_color(const id, const input[], any:...)
  461. {
  462.     new count = 1, players[32]
  463.     static msg[2048]
  464.     vformat(msg, 2047, input, 3)
  465.    
  466.     replace_all(msg, 190, "!g", "^4")
  467.     replace_all(msg, 190, "!y", "^1")
  468.     replace_all(msg, 190, "!t", "^3")
  469.    
  470.    
  471.     if (id) players[0] = id; else get_players(players, count, "ch")
  472.     {
  473.     for (new i = 0; i < count; i++)
  474.     {
  475.         if (is_user_connected(players[i]))
  476.         {
  477.             message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  478.             write_byte(players[i])
  479.             write_string(msg)
  480.             message_end()
  481.         }
  482.     }
  483. }
  484.     return PLUGIN_HANDLED
  485. }



txt:

English fordítása: ( [profil]pixxa112[/profil] )

► Spoiler mutatása


És szívesen hallgatok profibbaktól építő jellegű kritikát, sőt annak még örülnék is!:)

_________________
 ! Moderátori megjegyzés (kiki):
Kérlek csekkold az aláírásra vonatkozó szabályokat!


A hozzászólást 8 alkalommal szerkesztették, utoljára The Peace 2017.01.27. 16:27-kor.

Ők köszönték meg The Peace nek ezt a hozzászólást: FonoK (2017.01.27. 12:59)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Befejezettlen DeathRun menü.
HozzászólásElküldve: 2017.01.16. 12:35 
Offline
Fórum Moderátor
Avatar

Csatlakozott: 2014.05.01. 13:18
Hozzászólások: 627
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 104 alkalommal
Negatívum, hogy sok helyen nem használod az 'else' kifejezést. Ami miatt lehetne akár kevésbé terhelő is.
Továbbá a 8. 9. 0. menüpontokat nem tetted többnyelvűvé és feltűnt, hogy a [hu] és [en] tagok alatt is magyar fordítás található.

A többdimenziós tömböket én is jobban szeretem, de ha már használod, akkor miért nem egybe raksz mindent? Az összes érék a fegyver tulajdonságaira gyakorol hatást, emiatt nem is tartom szükségesnek külön venni az értékeket, mint sebesség, vagy a gravitáció.

A jelenlegi fegyver lekérdezés meg ezen a módon szerintem nem túl kifizetődő. Ha az fegyver elővételt Hook-olnád, akkor kímélőbb lenne.

Ők köszönték meg JohanCorn nek ezt a hozzászólást: FonoK (2017.01.27. 12:59)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Befejezettlen DeathRun menü.
HozzászólásElküldve: 2017.01.16. 15:03 
Offline
Félisten
Avatar

Csatlakozott: 2016.03.06. 14:20
Hozzászólások: 964
Megköszönt másnak: 102 alkalommal
Megköszönték neki: 134 alkalommal
JohanCorn írta:
Negatívum, hogy sok helyen nem használod az 'else' kifejezést. Ami miatt lehetne akár kevésbé terhelő is.
Továbbá a 8. 9. 0. menüpontokat nem tetted többnyelvűvé és feltűnt, hogy a [hu] és [en] tagok alatt is magyar fordítás található.

A többdimenziós tömböket én is jobban szeretem, de ha már használod, akkor miért nem egybe raksz mindent? Az összes érék a fegyver tulajdonságaira gyakorol hatást, emiatt nem is tartom szükségesnek külön venni az értékeket, mint sebesség, vagy a gravitáció.

A jelenlegi fegyver lekérdezés meg ezen a módon szerintem nem túl kifizetődő. Ha az fegyver elővételt Hook-olnád, akkor kímélőbb lenne.


Naaa, ezt már szeretem, erre vártam igazából.


'else'-ről:

Jelenlegi:
  1. if(pistol[item][id] == 0){
  2.         if(Pont[id] >= Points[item])
  3.         {
  4.             print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  5.             pistol[item][id]++;
  6.             Pont[id] -= Points[item]
  7.             MyUsp(id)
  8.         }
  9.         else print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "KEVESPONT")
  10.     }



És ahogy te szeretnéd? (ahogy nem annyira terhelő?)

  1. if(pistol[item][id] == 0){
  2.         if(Pont[id] >= Points[item])
  3.         {
  4.             print_color(id, "!g[DeathRun]!y %L",LANG_PLAYER, "SIKERES")
  5.             pistol[item][id]++;
  6.             Pont[id] -= Points[item]
  7.             MyUsp(id)
  8.     }


8.9.0 menüpont:

  1. menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  2.     menu_setprop(menu, MPROP_NEXTNAME, "Következo");
  3.     menu_setprop(menu, MPROP_EXITNAME, "KilĂ©pĂ©s");


Ahogy te akarod:

Igazam van?
  1. menu_setprop(menu, MPROP_BACKNAME, LANG_PLAYER, "VISSZA");
  2. menu_setprop(menu, MPROP_NEXTNAME, LANG_PLAYER, "KOVETKEZO");
  3. menu_setprop(menu, MPROP_EXITNAME, LANG_PLAYER, "KILEP");


1 pár szó a fordításról:

Igazából a címbe is kiszemelhető ez hogy "befejezettlen menü" és ezálltal arra a részre még nem tértem, de ha valaki unatkozik ,az lefordíthatja Angol-ra és kirakom úgy.



"A többdimenziós tömböket én is jobban szeretem, de ha már használod, akkor miért nem egybe raksz mindent? Az összes érék a fegyver tulajdonságaira gyakorol hatást, emiatt nem is tartom szükségesnek külön venni az értékeket, mint sebesség, vagy a gravitáció."

- Most megfogtál, mert ezt nem igazán értem ,hogy hogyan szeretnéd!


"Fegyver Hook"

- Most bele néztem az egyik forrásodba, és látom van 1 ilyen "hook"-olás

*Idézve*
  1. public weapon_hook(id)
  2. {
  3.     engclient_cmd(id, "weapon_awp");
  4.  
  5.     return PLUGIN_HANDLED;
  6. }


de viszont ennek nem lenne jelentős része, hisz ha felrakod magát a DR módot (mert ez csak menü), akkor minden rendben lesz! :D

#Köszönöm a választ!

_________________
 ! Moderátori megjegyzés (kiki):
Kérlek csekkold az aláírásra vonatkozó szabályokat!

Ők köszönték meg The Peace nek ezt a hozzászólást: FonoK (2017.01.27. 12:59)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Befejezettlen DeathRun menü.
HozzászólásElküldve: 2017.01.16. 16:18 
Offline
Fórum Moderátor
Avatar

Csatlakozott: 2014.05.01. 13:18
Hozzászólások: 627
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 104 alkalommal
Az else ágazást igazából a 125. sorra gondoltam első körben és nem a fent említettre.

A 8.9.0. pontokra is format, vagy formatex funkciókkal hasonlóképpen mint minden nyelves sorodban.

A Hook-ot nem így értettem, hanem már meglévő eseménnyel összekapcsolásra, a kifejezést egy angol fórumon találtam, de akkor bizonyára ide nem passzol. Konkrétan azért írtam, mert CurWpn-el az elővételt és lövést is ellenőrzöl, ami viszont elég felesleges, mert a kinézetet elővételkor elég ha ráteszed (deploy) funkció. Azt hiszem Hamsandwich-ben Item_Deploy néven keress rá.

A több dimenzióra pedig egy példát mutatok.
  1. new const Knives[][][]
  2. {
  3. // { "Kés Neve Str.", "Információ Str.", "Szint Str., vagy Num.", "Model Str.", "Sebesség Str.", "Gravitáció Str." },
  4. { "Arany", "0.5 Gravity", "10", "models/v_knife_gold.mdl", "230.0", "0.5" }
  5. }


Magyarázat, ami szükséges. Tudomásom szerint egy tömb csak egyféle elemet tartalmazhat (Num, Str, Float), bár (Num és Str) is megvalósítható szerintem, de Float mással nem. Erre megoldás, ha mindent Str ként írsz bele és ahol kiolvasd és szükséges használod a következő funkciókat.

  1. str_to_num(...)
  2. str_to_float(...)

Ők köszönték meg JohanCorn nek ezt a hozzászólást: FonoK (2017.01.27. 12:59)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Befejezettlen DeathRun menü.
HozzászólásElküldve: 2017.01.16. 16:41 
Offline
SM Fejlesztő
Avatar

Csatlakozott: 2012.10.18. 15:58
Hozzászólások: 2486
Megköszönt másnak: 28 alkalommal
Megköszönték neki: 132 alkalommal
Off Topic
befejezettlen -> befejezetlen

_________________
www.akosvagyok.hu

Ők köszönték meg Maxi nek ezt a hozzászólást: FonoK (2017.01.27. 12:59)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Befejezetlen DeathRun menü.
HozzászólásElküldve: 2017.01.16. 20:17 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2014.09.08. 22:21
Hozzászólások: 3014
Megköszönt másnak: 96 alkalommal
Megköszönték neki: 555 alkalommal
#include <amxmisc>
#include <fun>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta>

ebből csinálj 2-t

_________________
GitHub - mforce

Ők köszönték meg mforce nek ezt a hozzászólást: FonoK (2017.01.27. 12:59)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Befejezettlen DeathRun menü.
HozzászólásElküldve: 2017.01.16. 20:45 
Offline
Félisten
Avatar

Csatlakozott: 2016.03.06. 14:20
Hozzászólások: 964
Megköszönt másnak: 102 alkalommal
Megköszönték neki: 134 alkalommal
JohanCorn írta:
Az else ágazást igazából a 125. sorra gondoltam első körben és nem a fent említettre.

A 8.9.0. pontokra is format, vagy formatex funkciókkal hasonlóképpen mint minden nyelves sorodban.

A Hook-ot nem így értettem, hanem már meglévő eseménnyel összekapcsolásra, a kifejezést egy angol fórumon találtam, de akkor bizonyára ide nem passzol. Konkrétan azért írtam, mert CurWpn-el az elővételt és lövést is ellenőrzöl, ami viszont elég felesleges, mert a kinézetet elővételkor elég ha ráteszed (deploy) funkció. Azt hiszem Hamsandwich-ben Item_Deploy néven keress rá.

A több dimenzióra pedig egy példát mutatok.
  1. new const Knives[][][]
  2. {
  3. // { "Kés Neve Str.", "Információ Str.", "Szint Str., vagy Num.", "Model Str.", "Sebesség Str.", "Gravitáció Str." },
  4. { "Arany", "0.5 Gravity", "10", "models/v_knife_gold.mdl", "230.0", "0.5" }
  5. }


Magyarázat, ami szükséges. Tudomásom szerint egy tömb csak egyféle elemet tartalmazhat (Num, Str, Float), bár (Num és Str) is megvalósítható szerintem, de Float mással nem. Erre megoldás, ha mindent Str ként írsz bele és ahol kiolvasd és szükséges használod a következő funkciókat.

  1. str_to_num(...)
  2. str_to_float(...)


Értem JohanCorn , és köszönöm szépen, ezt magamnak így felhasználom :)...

Mforce - miért kellene kettő?

_________________
 ! Moderátori megjegyzés (kiki):
Kérlek csekkold az aláírásra vonatkozó szabályokat!

Ők köszönték meg The Peace nek ezt a hozzászólást: FonoK (2017.01.27. 13:00)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Befejezetlen DeathRun menü.
HozzászólásElküldve: 2017.01.27. 11:11 
Offline
Őskövület
Avatar

Csatlakozott: 2011.12.28. 00:35
Hozzászólások: 2736
Megköszönt másnak: 56 alkalommal
Megköszönték neki: 275 alkalommal
Tessék így már csinálhatod magadnak angolul :D

  1. [en]
  2. FOMENUCIM = \wDeathRun Menu \r Level:\d %d | \r XP: \d %d%% | \rPoint: \d %d
  3. FOMENU1 = Knife
  4. FOMENU2 = USP
  5. FOMENU3 = Shop
  6. FOMENU4 = Information
  7.  
  8. BOLT0 = Book  \r(+1 level)  \d 120 Point
  9. BOLT1 = Regeneration \r(+25HP)  \d 24 Point
  10. BOLT2 = Development \r(+25AP) \d19 Point
  11. BOLT3 = Respawn \r(+1 life) \d 6 Point
  12.  
  13. KAPOTTPONT = +%d Points
  14. KEVESPONT = Sorry, not enough points.
  15. SIKERES = Successful purchases.
  16. KEVESSZINT = Sorry, not enough level.
  17. UJRAELEDTEL = Successful revived.
  18. ELET =  !t%d!y Your life is.

_________________
****

Ők köszönték meg pixxa112 nek ezt a hozzászólást (összesen 2): FonoK (2017.01.27. 13:00) • The Peace (2017.01.27. 16:27)
  Népszerűség: 4.55%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Befejezetlen DeathRun menü.
HozzászólásElküldve: 2017.01.27. 16:27 
Offline
Félisten
Avatar

Csatlakozott: 2016.03.06. 14:20
Hozzászólások: 964
Megköszönt másnak: 102 alkalommal
Megköszönték neki: 134 alkalommal
Köszönet a többiek nevében is :DD

_________________
 ! Moderátori megjegyzés (kiki):
Kérlek csekkold az aláírásra vonatkozó szabályokat!

Ők köszönték meg The Peace nek ezt a hozzászólást: FonoK (2017.01.27. 19:43)
  Népszerűség: 2.27%


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  [ 9 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 2 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