Raised This Month: $ Target: $400
 0% 

Scripting Help


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
EFFx
Veteran Member
Join Date: Feb 2016
Location: São Paulo, Brasil
Old 04-15-2016 , 23:13   Scripting Help
Reply With Quote #1

Hi guys, i was helping a member but i dont know how to save the player model.
I tryed the Save Models by Exolent but i dont know why inst work, can you guys help me?
here's the code:
PHP Code:
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>
#include <fakemeta>
#include <engine>
#include <fun>
#include <nvault>
 
#define PLUGIN "CSGO Skins"
#define VERSION "1.0"
#define AUTHOR "EFFx"
 
new gVault
 
new const szNormalKnife[] = "models/v_knife.mdl"
 
// Models da bayonet
new const szBayonetFade[] = "models/CSGOSkins/v_bayonet_fade.mdl"
new const szBayonetDoppler[] = "models/CSGOSkins/v_bayonet_doppler.mdl"
new const szBayonetViolet[] = "models/CSGOSkins/v_bayonet_violet.mdl"
 
// Models da Hunts
new const szHuntsFade[] = "models/CSGOSkins/v_hunts_fade.mdl"
new const szHuntsCaseHardened[] = "models/CSGOSkins/v_hunts_ch.mdl"
new const szHuntsSlaughter[] = "models/CSGOSkins/v_hunts_slaughter.mdl"
 
new const szPrefix[] = "!g[ AMXX ]!y:"
 
// Defines da KNIFE original do seu counter strike
new szNormal[33]
 
// Defines da bayonet, szBayonetSelected[id] = 1 é a Fade, 2 Violet e 3 Doppler, szBayonet[id] = 1 ativa as skins
// O szBayonetSelected é pra ler quando voce selecionou a bayonet pra escolher as skins da bayonet que quer
new szBayonet[33], szBayonetSelected[33] = 0
new szBayonetSkins[33]
 
// Defines da hunts, szHuntsSelected[id] = 1 é a Fade, 2 CaseHardened e 3 Slaughter, szHunts[id] = 1 ativa as skins
// O szHuntsSelected é pra ler quando voce selecionou a Hunts pra escolher as skins da Hunts que quer
new szHunts[33], szHuntsSelected[33] = 0
new szHuntsSkins[33]
 
public 
plugin_init() 
{
 
register_plugin(PLUGINVERSIONAUTHOR)
 
 
gVault nvault_open("weapon_models")
 
 
register_clcmd("say facas","ShowKnifesMenu")
 
register_clcmd("say_team facas","ShowKnifesMenu")
 
register_clcmd("say /facas","ShowKnifesMenu")
 
register_clcmd("say_team /facas","ShowKnifesMenu")
 
register_clcmd("say .facas","ShowKnifesMenu")
 
register_clcmd("say_team .facas","ShowKnifesMenu")
 
 
RegisterHam(Ham_Spawn,"player","func_Spawn",1)
 
 
register_event("CurWeapon","EventChangeWeapon","be","1=1")
}
public 
plugin_precache()
{
 
//Precache dos models da Bayonet
 
precache_model(szBayonetFade)
 
precache_model(szBayonetDoppler)
 
precache_model(szBayonetViolet)
 
 
//Precache dos models da Hunts
 
precache_model(szHuntsFade)
 
precache_model(szHuntsSlaughter)
 
precache_model(szHuntsCaseHardened)
}
public 
client_putinserver(id)
{
 
szNormal[id] = // Iniciar com a skin do seu cs
 
 
szBayonet[id] = // Desativa a Bayonet
 
szBayonetSkins[id] = // Desativa a Bayonet
 
 
szHunts[id] = // Desativa a Hunts
 
szHuntsSkins[id] = // Desativa a Hunts
}
public 
func_Spawn(id)
{
 if(
szNormal[id] == 1)
 {
  
szNormal[id] = 1
 
  szBayonet
[id] = 0
  szBayonetSkins
[id] = 0
  szBayonetSelected
[id] = 0
 
}
 if(
szBayonet[id] == 1)
 {
  
szNormal[id] = 0
  
  szBayonetSkins
[id] = szBayonetSkins[id]
 }
}
public 
ShowKnifesMenu(id)
{
 if(
is_user_alive(id))
 {
  new 
szMenu menu_create("CSGO Skins \w( \rfacas \w )","csgoskins_handler")
  
  
menu_additem(szMenu,"Normal")
  
  if(
szBayonetSkins[id] == 0)
   
menu_additem(szMenu,"Bayonet")
   
  if(
szBayonetSkins[id] == 1)
   
menu_additem(szMenu,"Bayonet \dusando: \y(Fade)")
   
  if(
szBayonetSkins[id] == 2)
   
menu_additem(szMenu,"Bayonet \dusando: \y(Violet)")
   
  if(
szBayonetSkins[id] == 3)
   
menu_additem(szMenu,"Bayonet \dusando: \y(Doppler)")
   
  if(
szHuntsSkins[id] == 0)
   
menu_additem(szMenu,"HuntsMan")
   
  if(
szHuntsSkins[id] == 1)
   
menu_additem(szMenu,"HuntsMan \dusando: \y(Fade)")
   
  if(
szHuntsSkins[id] == 2)
   
menu_additem(szMenu,"HuntsMan \dusando: \y(CaseHardened)")
   
  if(
szHuntsSkins[id] == 3)
   
menu_additem(szMenu,"HuntsMan \dusando: \y(Slaugther)")
  
  
menu_display(id,szMenu)
 }
}
public 
csgoskins_handler(id,menu,item)
{
 if(
item == MENU_EXIT)
 {
  
menu_destroy(menu)
  return 
PLUGIN_HANDLED
 
}
 new 
vModel[56]
 switch(
item)
 {
  case 
0:
  {
   if(
szNormal[id] == 1)
   {
    
ChatColor(id,"%s You already have the!g NormalKnife",szPrefix)
    
ShowKnifesMenu(id)
   }
   else
   {
    if(
get_user_weapon(id) == CSW_KNIFE)
    {
     
format(vModel,55,szNormalKnife)
     
entity_set_string(idEV_SZ_viewmodelvModel)
    }
    
szNormal[id] = 1
    szBayonet
[id] = 0
    szHunts
[id] = 0
    
    szHuntsSkins
[id] = 0
    szBayonetSkins
[id] = 0
    
    ChatColor
(id,"%s You has been selected the!g Default Knife",szPrefix)
   }
  }
  case 
1:
  {
   
szBayonetSelected[id] = 1
   ShowKnifeTypes
(id)
  }
  case 
2:
  {
   
szHuntsSelected[id] = 1
   ShowKnifeTypes
(id)
  }
 }
 return 
PLUGIN_HANDLED
}
public 
ShowKnifeTypes(id)
{
 new 
menutittle menu_create("Knife Type \w( \r say facas \w )","knife_type_handler")
 
 if(
szBayonetSelected[id] == 1)
 {
  
menu_additem(menutittle,"Fade")
  
menu_additem(menutittle,"\rUltra Violet")
  
menu_additem(menutittle,"Doppler")
 }
 if(
szHuntsSelected[id] == 1)
 {
  
menu_additem(menutittle,"Fade")
  
menu_additem(menutittle,"\rCaseHerdened")
  
menu_additem(menutittle,"Slaugther")
 }
 
menu_display(id,menutittle)
}
public 
knife_type_handler(id,menu,item)
{
 if(
item == MENU_EXIT)
 {
  
menu_destroy(menu)
  return 
PLUGIN_HANDLED
 
}
 
 new 
vModel[56]
 if(
szBayonetSelected[id] == 1)
 {
  switch(
item)
  {
   case 
0:
   {
    if(
szBayonetSkins[id] == 1)
    {
     
ChatColor(id,"%s You already have the!g Bayonet Fade",szPrefix)
     
ShowKnifeTypes(id)
    }
    else
    {
     if(
get_user_weapon(id) == CSW_KNIFE)
     {
      
format(vModel,55,szBayonetFade)
      
entity_set_string(idEV_SZ_viewmodelvModel)
     }
     
szNormal[id] = 0
     szBayonet
[id] = 1
     szHunts
[id] = 0
     
     SaveModels
(idCSW_KNIFE,"models/CSGOSkins/v_bayonet_fade.mdl")
    
     
szHuntsSkins[id] = 0
     szBayonetSkins
[id] = 1
     szBayonetSelected
[id] = 0
    
     ChatColor
(id,"%s You has been selected the!g Bayonet Fade",szPrefix)
    }
   }
   case 
1:
   {
    if(
szBayonetSkins[id] == 2)
    {
     
ChatColor(id,"%s You already have the!g Bayonet Ultra Violet",szPrefix)
     
ShowKnifeTypes(id)
    }
    else
    {
     if(
get_user_weapon(id) == CSW_KNIFE)
     {
      
format(vModel,55,szBayonetViolet)
      
entity_set_string(idEV_SZ_viewmodelvModel)
     }
     
szNormal[id] = 0
     szBayonet
[id] = 1
     szHunts
[id] = 0
     
     SaveModels
(idCSW_KNIFE,"models/CSGOSkins/v_bayonet_violet.mdl")
    
     
szHuntsSkins[id] = 0
     szBayonetSkins
[id] = 2
     szBayonetSelected
[id] = 0
    
     ChatColor
(id,"%s You has been selected the!g Bayonet Ultra Violet",szPrefix)
    }
   }
   case 
2:
   {
    if(
szBayonetSkins[id] == 3)
    {
     
ChatColor(id,"%s You already have the!g Bayonet Doppler",szPrefix)
     
ShowKnifeTypes(id)
    }
    else
    {
     if(
get_user_weapon(id) == CSW_KNIFE)
     {
      
format(vModel,55,szBayonetDoppler)
      
entity_set_string(idEV_SZ_viewmodelvModel)
     }
     
szNormal[id] = 0
     szBayonet
[id] = 1
     szHunts
[id] = 0
     
     SaveModels
(idCSW_KNIFE,"models/CSGOSkins/v_bayonet_doppler.mdl")
    
     
szHuntsSkins[id] = 0
     szBayonetSkins
[id] = 3
     szBayonetSelected
[id] = 0
    
     ChatColor
(id,"%s You has been selected the!g Bayonet Doppler",szPrefix)
    }
   }
  }
 }
 if(
szHuntsSelected[id] == 1)
 {
  switch(
item)
  {
   case 
0:
   {
    if(
szHuntsSkins[id] == 1)
    {
     
ChatColor(id,"%s You already have the!g HuntsMan Fade",szPrefix)
     
ShowKnifeTypes(id)
    }
    else
    {
     if(
get_user_weapon(id) == CSW_KNIFE)
     {
      
format(vModel,55,szHuntsFade)
      
entity_set_string(idEV_SZ_viewmodelvModel)
     }
     
szNormal[id] = 0
     szBayonet
[id] = 0
     szHunts
[id] = 1
     
     SaveModels
(idCSW_KNIFE,"models/CSGOSkins/v_hunts_fade.mdl")
    
     
szBayonetSkins[id] = 0
     szBayonetSelected
[id] = 0
    
     szHuntsSkins
[id] = 1
     szHuntsSelected
[id] = 0
    
     ChatColor
(id,"%s You has been selected the!g Hunts Fade",szPrefix)
    }
   }
   case 
1:
   {
    if(
szHuntsSkins[id] == 2)
    {
     
ChatColor(id,"%s You already have the!g HuntsMan CaseHerdened",szPrefix)
     
ShowKnifeTypes(id)
    }
    else
    {
     if(
get_user_weapon(id) == CSW_KNIFE)
     {
      
format(vModel,55,szHuntsCaseHardened)
      
entity_set_string(idEV_SZ_viewmodelvModel)
     }
     
szNormal[id] = 0
     szBayonet
[id] = 0
     szHunts
[id] = 1
     
     SaveModels
(idCSW_KNIFE,"models/CSGOSkins/v_hunts_ch.mdl")
    
     
szBayonetSkins[id] = 0
     szBayonetSelected
[id] = 0
    
     szHuntsSkins
[id] = 2
     szHuntsSelected
[id] = 0
    
     ChatColor
(id,"%s You has been selected the!g HuntsMan CaseHerdened",szPrefix)
    }
   }
   case 
2:
   {
    if(
szHuntsSkins[id] == 3)
    {
     
ChatColor(id,"%s You already have the!g HuntsMan Slaugther",szPrefix)
     
ShowKnifeTypes(id)
    }
    else
    {
     if(
get_user_weapon(id) == CSW_KNIFE)
     {
      
format(vModel,55,szHuntsSlaughter)
      
entity_set_string(idEV_SZ_viewmodelvModel)
     }
     
szNormal[id] = 0
     szBayonet
[id] = 0
     szHunts
[id] = 1
     
     SaveModels
(idCSW_KNIFE,"models/CSGOSkins/v_hunts_slaughter.mdl")
    
     
szBayonetSkins[id] = 0
     szBayonetSelected
[id] = 0
    
     szHuntsSkins
[id] = 3
     szHuntsSelected
[id] = 0
    
     ChatColor
(id,"%s You has been selected the!g HuntsMan Slaugther",szPrefix)
    }
   }
  }
 }
 return 
PLUGIN_HANDLED
}
public 
EventChangeWeapon(id)
{
 new 
vModel[56]
 if(
read_data(2) == CSW_KNIFE)
 {
  if(
is_user_alive(id))
  {
   if(
szNormal[id] == 1)
   {
    
format(vModel,55,szNormalKnife)
   }
   if(
szBayonet[id] == 1)
   {
    if(
szBayonetSkins[id] == 1)
    {
     
format(vModel,55,szBayonetFade)
     new 
v_model[64]
     
LoadModels(idCSW_KNIFEv_modelcharsmax(v_model))
     if(
v_model[0]) 
     {
      
format(vModel,55v_model)
     }
    }
    else if(
szBayonetSkins[id] == 2)
    {
     
format(vModel,55,szBayonetViolet)
     new 
v_model[64]
     
LoadModels(idCSW_KNIFEv_modelcharsmax(v_model))
     if(
v_model[0]) 
     {
      
format(vModel,55v_model)
     }
    }
    else if(
szBayonetSkins[id] == 3)
    {
     
format(vModel,55,szBayonetDoppler)
     new 
v_model[64]
     
LoadModels(idCSW_KNIFEv_modelcharsmax(v_model))
     if(
v_model[0]) 
     {
      
format(vModel,55,v_model)
     }
    }
   }
   if(
szHunts[id] == 1)
   {
    if(
szHuntsSkins[id] == 1)
    {
     
format(vModel,55,szHuntsFade)
     new 
v_model[64]
     
LoadModels(idCSW_KNIFEv_modelcharsmax(v_model))
     if(
v_model[0]) 
     {
      
format(vModel,55,v_model)
     }
    }
    else if(
szHuntsSkins[id] == 2)
    {
     
format(vModel,55,szHuntsCaseHardened)
     new 
v_model[64]
     
LoadModels(idCSW_KNIFEv_modelcharsmax(v_model))
     if(
v_model[0]) 
     {
      
format(vModel,55v_model)
     }
    }
    else if(
szHuntsSkins[id] == 3)
    {
     
format(vModel,55,szHuntsSlaughter)
     new 
v_model[64]
     
LoadModels(idCSW_KNIFEv_modelcharsmax(v_model))
     if(
v_model[0]) 
     {
      
format(vModel,55v_model)
     }
    }
   }
   
entity_set_string(idEV_SZ_viewmodelvModel)
  }
 }
}
SaveModels(idweaponIDv_model[]) 
{
 new 
szSteamID[35], weaponName[21], key[64]
 
get_user_name(idszSteamIDcharsmax(szSteamID))
 
get_weaponname(weaponIDweaponNamecharsmax(weaponName))
    
 
formatex(keycharsmax(key), "%s-%s-v"szSteamIDweaponName)
 
nvault_set(gVaultkeyv_model)
}
LoadModels(idweaponIDv_model[], v_model_len
{
 new 
szSteamID[35], weaponName[21], key[64]
 
get_user_name(idszSteamIDcharsmax(szSteamID))
 
get_weaponname(weaponIDweaponNamecharsmax(weaponName))
    
 
formatex(keycharsmax(key), "%s-%s-v"szSteamIDweaponName)
 
nvault_get(gVaultkeyv_modelv_model_len)
}
stock ChatColor(const id, const input[], any:...) 
{
 new 
count 1players32 ]
 static 
msg191 ]
 
vformatmsg190input)
   
 
replace_allmsg190"!g""^4" )
 
replace_allmsg190"!y""^1" )
 
replace_allmsg190"!t""^3" )
   
 if(
idplayers] = id; else get_playersplayerscount"ch" )
 {
  for(new 
0counti++)
  {
   if( 
is_user_connectedplayers] ) )
   {
    
message_beginMSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players] )  
    
write_byteplayers] )
    
write_stringmsg )
    
message_end( )
   }
  }
 }
}
public 
plugin_end()
{
 
nvault_close(gVault)

Sorry for the descriptions in brasilian, the member is portuguese
If you guys want the models, here's
Attached Files
File Type: zip CSGOSkins.zip (5.49 MB, 35 views)

Last edited by EFFx; 04-15-2016 at 23:17.
EFFx is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 18:35.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode