hlmod.hu
https://hlmod.hu/

USP VÉTELE!
https://hlmod.hu/viewtopic.php?f=10&t=22104
Oldal: 1 / 1

Szerző:  DecToR [ 2015.08.31. 19:38 ]
Hozzászólás témája:  USP VÉTELE!

Sziasztok!

Azt hogy oldjam meg hogy az USP-t venni lehessen és ne magától nyissa fel ha megvan az annyi ölés?

USP Menü:
Kód:
#include <amxmodx>
#include <engine>
#include <nvault>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>

#define PLUGIN "usp pontert"
#define VERSION "1.0"
#define AUTHOR "DeRoiD"

new oles[33], usp[33], vault

public plugin_precache() {
   precache_model("models/v_usp.mdl")
   precache_model("models/v_usp.mdl")
   precache_model("models/v_usp.mdl")
   precache_model("models/v_usp.mdl")
   precache_model("models/v_usp.mdl")
}
public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   register_event("DeathMsg","death","a")
   register_clcmd("say /usp","menu")
   vault = nvault_open("kes_olessert")
   register_event("CurWeapon", "ecw", "be", "1=1")
   set_task(0.1, "kijelzo", 0, _, _, "b")
}
public ecw(id)
{
   new fegyver = get_user_weapon(id)
   if(usp[id] == 0 && fegyver == CSW_USP)
   {
      set_pev(id, pev_viewmodel2, "models/v_usp.mdl")
   }
   if(usp[id] == 1 && fegyver == CSW_USP)
   {
      set_pev(id, pev_viewmodel2, "models/v_usp.mdl")
   }
   if(usp[id] == 2 && fegyver == CSW_USP)
   {
      set_pev(id, pev_viewmodel2, "models/v_usp.mdl")
   }
   if(usp[id] == 3 && fegyver == CSW_USP)
   {
      set_pev(id, pev_viewmodel2, "models/v_usp.mdl")
   }
   if(usp[id] == 4 && fegyver == CSW_USP)
   {
      set_pev(id, pev_viewmodel2, "models/v_usp.mdl")
   }
}
public death(){
   new killer = read_data(1)
   new victim = read_data(2)
   
   if(killer == victim)
   {
      return PLUGIN_HANDLED
   }
   oles[killer]++
   return PLUGIN_HANDLED
}
public menu(id) {
   new menu = menu_create("\rTeszt USP Menu", "menu_h")
   if(oles[id] >= 15)
      menu_additem(menu,"\tTigris USP\r[Feloldva]","1",0)
   else
      menu_additem(menu,"\tTigris USP \r[15 Pont]","1",0)
   if(oles[id] >= 35)
      menu_additem(menu,"\ySniper USP \r[Feloldva]","2",0)
   else
      menu_additem(menu,"\dSniper USP \r[35 Pont]","2",0)
   if(oles[id] >= 50)
      menu_additem(menu,"\yEros USP \r[Feloldva]","3",0)
   else
      menu_additem(menu,"\dEros USP \r[50 Pont]","3",0)
   if(oles[id] >= 70)
      menu_additem(menu,"\yNegy USP \r[Feloldva]","4",0)
   else
      menu_additem(menu,"\dNegy USP \r[70 Pont]","4",0)
   if(oles[id] >= 100)
      menu_additem(menu,"\yOt USP \r[Feloldva]","5",0)
   else
      menu_additem(menu,"\dOt USP [100 Pont]","5",0)
   menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
   menu_display(id, menu, 0);
}
public menu_h(id, menu, item)
{
   if( item == MENU_EXIT )
   {
      menu_destroy(menu);
      return PLUGIN_HANDLED;
   }
   new data[9], szName[64];
   new access, callback;
   menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
   new key = str_to_num(data);
   
   switch(key)
   {
      case 1:{
         if(oles[id] >= 15)
            usp[id] = 0
         else
         client_print(id,print_chat,"Tul keves olesed van")
      }
      case 2:{
         if(oles[id] >= 35)
            usp[id] = 1
         else
            client_print(id,print_chat,"Tul keves olesed van")
      }
      case 3:{
         if(oles[id] >= 50)
            usp[id] = 2
         else
            client_print(id,print_chat,"Tul keves olesed van")
      }
      case 4:{
         if(oles[id] >= 70)
            usp[id] = 3
         else
            client_print(id,print_chat,"Tul keves olesed van")
      }
      case 5:{
         if(oles[id] >= 100)
            usp[id] = 4
         else
            client_print(id,print_chat,"Tul keves olesed van")
      }
   }   
   menu_destroy(menu)
   return PLUGIN_HANDLED
}
public mentes(id)
{
   new vaultkey[64],vaultdata[256], name[32]
   get_user_name(id, name, 31)
   format(vaultkey,63,"%s-KES", name)
   format(vaultdata,255,"%d", oles[id])
   nvault_set(vault,vaultkey,vaultdata)
   return PLUGIN_CONTINUE
}
public betoltes(id)
{
   new vaultkey[64],vaultdata[256], name[32]
   get_user_name(id, name, 31)
   format(vaultkey,63,"%s-KES", name)
   nvault_get(vault,vaultkey,vaultdata,255)
   oles[id] = str_to_num(vaultdata)
   return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
   mentes(id)
}
public client_connect(id)
{
   betoltes(id)
}
public kijelzo(){
   new players[32], szam, id
   get_players(players, szam)
   for(new i; i<szam; i++){
      id = players[i]
      set_hudmessage(255, 0, 0, 0.02, 0.24, 0, 6.0, 12.0)
      show_hudmessage(id, "Pont: [%d]", oles[id])
   }
}

Szerző:  mforce [ 2015.08.31. 19:48 ]
Hozzászólás témája:  Re: USP VÉTELE!

mforce @ Pontrendszer

az sma-ban nézd meg miképp oldtam meg a menüt régen :) Külön változó a pontoknak és a menü/curweaponnak.

De a menü megoldása ugye egyszerűbb,meg gyorsabban lefut, ahogy tegnap írtuk:
Kód:
new tempa[64];
formatex(tempa, charsmax(tempa), "%s", fegyo[id] == 0 ? "Alap fegyvercsomag \y|AKTÍV|":"Alap fegyvercsomag")
menu_additem(menu, tempa, "1", 0)


Első ha igaz, második ha nem.

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