⭐🚀 TkyNET | Blacklist ve Profesyonel DDoS Korumalı TeamSpeak 3 Sunucuları 🚀⭐
Sponsor Görsel
🌐 www.furiazm.com ⏰ 7/24 aktif Yönetim 💬 Discord.gg/furiaclancs 💰Ücretsiz Adminlik/Vip alımı 🌟 Türkiye’nin yeni en gelişmiş Zombie Plague sunucusu
Sponsor Görsel 2
SponsorSponsor

Haritaya Silah Koyma

Haritaya Silah koyma
Merhaba Bazı jail maplerinde bilindiği üzere silah yok silah odası hariç bu da isyan atmayı çok zorlaştırıyor elinde haritaya silah koyma plugini var mı ve silah koyulduktan sonra o map için hep geçerli olucak  map değişince de silinmeyecek silah.
RE: Haritaya Silah koyma
Merhaba,
https://www.webailesi.com/konu-cs-1-6-we...wner-34441

Bu eklentiyi kullanabilirsiniz.
Steam:Tıkla • Discord: lynchk
RE: Haritaya Silah koyma
(13-08-2025, 19:00)Lynchk Adlı Kullanıcıdan Alıntı: Merhaba,
https://www.webailesi.com/konu-cs-1-6-we...wner-34441

Bu eklentiyi kullanabilirsiniz.

Evet güzel oldu ama map değişince gidiyor bunu nasıl sağlayalabilirim.

(13-08-2025, 19:26)BurakBy Adlı Kullanıcıdan Alıntı:
(13-08-2025, 19:00)Lynchk Adlı Kullanıcıdan Alıntı: Merhaba,
https://www.webailesi.com/konu-cs-1-6-we...wner-34441

Bu eklentiyi kullanabilirsiniz.

Evet güzel oldu ama map değişince gidiyor bunu nasıl sağlayalabilirim.

ve sürekli tekrar swapm atıyor 10 saniyede bi ek olarakta ordan geçerken takılıyor karakter
Son Düzenleme: 13-08-2025, 19:28, Düzenleyen: BurakBy
RE: Haritaya Silah koyma
Cvarlar/komutları paylaşıyorum;
Kod:
Cvars/Cmds
ws_menu - opens the menu
ws_auto_remove 2/1/0 - auto remove weapons when the map have loaded. 1:Removes weapons on those maps you have a configuration file for. 2:removes all, no mather what.
ws_auto_load 1/0 - auto loads configurations
ws_reset_round 1/0 - will reload all guns after a round
ws_reset_gun 1/0 - will allow your guns to respawn on the same round
ws_reset_gun_time - the time it takes for a gun to respawn
ws_reset_gun_amount - the amount that will be respawed each time the time has run out.

Aynı roundda 1 kere spawnlanması için;
Kod:
ws_reset_gun 0
yapın.

Kaydetmek için silahı yerleştirdikten sonra menüden kayıt etmeniz gerekiyor.
Steam:Tıkla • Discord: lynchk
RE: Haritaya Silah koyma
kayıt ediyorum ancak map değişince tekrar gidiyor hocam dizine baktım içinde ws klasörü içine ini dosyası vardı onuda yaptım ancak kaydetmiyor
formatex(config,49,"%s/ws/%s.ini",config,map)
Son Düzenleme: 13-08-2025, 19:43, Düzenleyen: BurakBy
RE: Haritaya Silah koyma
(13-08-2025, 19:41)BurakBy Adlı Kullanıcıdan Alıntı: kayıt ediyorum ancak map değişince tekrar gidiyor hocam dizine baktım içinde ws klasörü içine ini dosyası vardı onuda yaptım ancak kaydetmiyor
formatex(config,49,"%s/ws/%s.ini",config,map)
Dosya içi dolu mu ? Kayıt etmiş mi verileri ?
Steam:Tıkla • Discord: lynchk
RE: Haritaya Silah koyma
yok hocam dosya içi boş maalesef

https://prnt.sc/ExmgIQgpD1H4
RE: Haritaya Silah koyma
Bu versiyonu deneyin;
PHP Kod:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

//ent name
#define wp_ent "weapon_entity"

//ent values
#define WP_Type pev_iuser4
#define WP_Left pev_iuser3
#define WP_Max  pev_iuser2

//primary and secondary weapons
#define PRIMARY_WEAPONS ((1<<CSW_SCOUT) | (1<<CSW_XM1014) | (1<<CSW_MAC10) | (1<<CSW_AUG) | (1<<CSW_UMP45) | (1<<CSW_SG550) | (1<<CSW_GALIL) | (1<<CSW_FAMAS) | (1<<CSW_AWP) | (1<<CSW_MP5NAVY) | (1<<CSW_M249) | (1<<CSW_M3) | (1<<CSW_M4A1) | (1<<CSW_TMP) | (1<<CSW_G3SG1) | (1<<CSW_SG552) | (1<<CSW_AK47) | (1<<CSW_P90))
#define SECONDARY_WEAPONS ((1<<CSW_P228) | (1<<CSW_ELITE) | (1<<CSW_FIVESEVEN) | (1<<CSW_USP) | (1<<CSW_GLOCK18) | (1<<CSW_DEAGLE))

//offsets
#define OFFSET_AWM_AMMO        377 
#define OFFSET_SCOUT_AMMO    378
#define OFFSET_PARA_AMMO    379
#define OFFSET_FAMAS_AMMO     380
#define OFFSET_M3_AMMO        381
#define OFFSET_USP_AMMO        382
#define OFFSET_FIVESEVEN_AMMO    383
#define OFFSET_DEAGLE_AMMO    384
#define OFFSET_P228_AMMO    385
#define OFFSET_GLOCK_AMMO    386
#define OFFSET_FLASH_AMMO    387
#define OFFSET_HE_AMMO        388
#define OFFSET_SMOKE_AMMO    389
#define OFFSET_C4_AMMO        390
#define linuxdiff        5

//ammo for each gun
#define AMMO_P228    52
#define AMMO_SCOUT    90
#define AMMO_Xm1014    32
#define AMMO_Mac10    100
#define AMMO_Aug    90
#define AMMO_Elite    120
#define AMMO_Fiveseven    100
#define AMMO_Ump45    100
#define AMMO_Sg550    90
#define AMMO_Galil    90
#define AMMO_Famas    90
#define AMMO_Usp    100
#define AMMO_Glock18    120
#define AMMO_Awp    30
#define AMMO_Mp5navy    120
#define AMMO_M249    200
#define AMMO_M3        32
#define AMMO_M4a1     90
#define AMMO_Tmp    120
#define AMMO_G3sg1    90
#define AMMO_Deagle    35
#define AMMO_Sg552    90
#define AMMO_Ak47    90
#define AMMO_P90    100

//array whit primary and secondary weapons
new const Secondary[] = {CSW_P228, CSW_ELITE, CSW_FIVESEVEN, CSW_USP, CSW_GLOCK18, CSW_DEAGLE};
new const 
Primary[]={CSW_SCOUT,CSW_XM1014,CSW_MAC10,CSW_AUG,CSW_UMP45,CSW_SG550,CSW_GALIL,CSW_FAMAS,CSW_AWP,CSW_MP5NAVY,CSW_M249,CSW_M3,CSW_M4A1,CSW_TMP,CSW_G3SG1,CSW_SG552,CSW_AK47,CSW_P90}            

//will store the weapon id after picking it on menu
new Selected[33]
new 
pcvar,Float:Time

public plugin_init()
{
    
register_plugin("Weapon Spawner", "1.3", "Fxfighter")
    
    
register_clcmd("ws_menu","Menu")
    
    
pcvar = register_cvar("ws_auto_remove","1")
    if(
get_pcvar_num(pcvar))remove_normal()
    
    
pcvar =    register_cvar("ws_auto_load","1")
    if(
get_pcvar_num(pcvar))load()
    
    
//regisetr reset cvar and get its value
    
pcvar =    register_cvar("ws_reset_round","1")
    if(
get_pcvar_num(pcvar))
    {
        
register_logevent("reset", 2, "1=Round_End") 
        
register_event("TextMsg", "reset", "a", "2=#Game_will_restart_in")
    }
    
pcvar =    register_cvar("ws_reset_gun","1")
    if(
get_pcvar_num(pcvar))
    {
        
register_forward(FM_Think, "Forward_Think")
        
        
pcvar = register_cvar("ws_reset_gun_time","10")
        
Time = get_pcvar_float(pcvar)
        
        
pcvar =    register_cvar("ws_reset_gun_amount","10")
        
pcvar = get_pcvar_num(pcvar)
    }
    
    
register_forward(FM_Touch,"Equip")
}
public 
Equip(id,weapon)
{
    if(!
pev_valid(weapon) || !pev_valid(id) )return
    static 
classname[20]
    
pev(weapon, pev_classname, classname,19)    
    if(!
equal(classname,wp_ent))return
    
    static 
left,type,i
    left 
= pev(weapon,WP_Left)
    if(!
left)return
    
type = pev(weapon,WP_Type)
    
    
//check if its a primary
    
if(PRIMARY_WEAPONS & ( 1 << type))
    {
        for (
i = 0; i < sizeof Primary; ++i)
        {
            
//cant have more then 1 primary
            
if(user_has_weapon(id,Primary[i]))return
        }
    }
    
//check if its secondary
    
else if(SECONDARY_WEAPONS & ( 1 << type))
    {
        for (
i = 0; i < sizeof Secondary; ++i)
        {
            
//cant have more then 2 secondary
            
if(user_has_weapon(id,Secondary[i]))return
        }
    }
    
//if its armor
    
else if(type == 31||type==32)
    {
        
//cant have moret hen 100 in armor
        
if(pev(id,pev_armorvalue) == 100.0)return
    }
    
//if its granade or knife and he already got one
    
else if(user_has_weapon(id,type))return
    
    
//give weapon and ammo
    
switch(type)
    {
        case 
1 :
        {
            
fm_give_item(id,"weapon_p228")
            
set_pdata_int(id,OFFSET_P228_AMMO,AMMO_P228,linuxdiff)
        }
        case 
2 :fm_give_item(id,"weapon_shield")
        case 
3 :
        {
            
fm_give_item(id,"weapon_scout")
            
set_pdata_int(id,OFFSET_SCOUT_AMMO,AMMO_SCOUT,linuxdiff)
        }
        case 
4 :
        {
            
fm_give_item(id,"weapon_hegrenade")
            
//set_pdata_int(id,OFFSET_HE_AMMO,amount,linuxdiff)
        
}
        case 
5 :
        {
            
fm_give_item(id,"weapon_xm1014")
            
set_pdata_int(id,OFFSET_M3_AMMO,AMMO_Xm1014,linuxdiff)
        }
        case 
7 :
        {
            
fm_give_item(id,"weapon_mac10")
            
set_pdata_int(id,OFFSET_USP_AMMO,AMMO_Mac10,linuxdiff)
        }
        case 
8 :
        {
            
fm_give_item(id,"weapon_aug")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Aug,linuxdiff)
        }
        case 
9 :
        {
            
fm_give_item(id,"weapon_smokegrenade")
            
//set_pdata_int(id,OFFSET_SMOKE_AMMO,amount,linuxdiff)
        
}
            
        case 
10:
        {
            
fm_give_item(id,"weapon_elite")
            
set_pdata_int(id,OFFSET_GLOCK_AMMO,AMMO_Elite,linuxdiff)
        }
        case 
11:
        {
            
fm_give_item(id,"weapon_fiveseven")
            
set_pdata_int(id,OFFSET_FIVESEVEN_AMMO,AMMO_Fiveseven,linuxdiff)
        }
        case 
12:
        {
            
fm_give_item(id,"weapon_ump45")
            
set_pdata_int(id,OFFSET_USP_AMMO,AMMO_Ump45,linuxdiff)
        }
        case 
13:
        {
            
fm_give_item(id,"weapon_sg550")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Sg550,linuxdiff)
        }
        case 
14:
        {
            
fm_give_item(id,"weapon_galil")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Galil,linuxdiff)
        }
        case 
15:
        {
            
fm_give_item(id,"weapon_famas")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Famas,linuxdiff)
        }
        case 
16:
        {
            
fm_give_item(id,"weapon_usp")
            
set_pdata_int(id,OFFSET_USP_AMMO,AMMO_Usp,linuxdiff)
        }
        case 
17:
        {
            
fm_give_item(id,"weapon_glock18")
            
set_pdata_int(id,OFFSET_GLOCK_AMMO,AMMO_Glock18,linuxdiff)
        }
        case 
18:
        {
            
fm_give_item(id,"weapon_awp")
            
set_pdata_int(id,OFFSET_AWM_AMMO,AMMO_Awp,linuxdiff)
        }
        case 
19:
        {
            
fm_give_item(id,"weapon_mp5navy")
            
set_pdata_int(id,OFFSET_GLOCK_AMMO,AMMO_Mp5navy,linuxdiff)
        }
        case 
20:
        {
            
fm_give_item(id,"weapon_m249")
            
set_pdata_int(id,OFFSET_PARA_AMMO,AMMO_M249,linuxdiff)
        }
        case 
21:
        {
            
fm_give_item(id,"weapon_m3")
            
set_pdata_int(id,OFFSET_M3_AMMO,AMMO_M3,linuxdiff)
        }
        case 
22:
        {
            
fm_give_item(id,"weapon_m4a1")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_M4a1,linuxdiff)
        }
        case 
23:
        {
            
fm_give_item(id,"weapon_tmp")
            
set_pdata_int(id,OFFSET_GLOCK_AMMO,AMMO_Tmp,linuxdiff)
        }
        case 
24:
        {
            
fm_give_item(id,"weapon_g3sg1")
            
set_pdata_int(id,OFFSET_SCOUT_AMMO,AMMO_G3sg1,linuxdiff)
        }
        case 
25:
        {
            
fm_give_item(id,"weapon_flashbang")
            
//set_pdata_int(id,OFFSET_FLASH_AMMO,amount,linuxdiff)
        
}
        case 
26:
        {
            
fm_give_item(id,"weapon_deagle")
            
set_pdata_int(id,OFFSET_DEAGLE_AMMO,AMMO_Deagle,linuxdiff)
        }
        case 
27:
        {
            
fm_give_item(id,"weapon_sg552")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Sg552,linuxdiff)
        }
        case 
28:
        {
            
fm_give_item(id,"weapon_ak47")
            
set_pdata_int(id,OFFSET_SCOUT_AMMO,AMMO_Ak47,linuxdiff)
        }
        case 
29:fm_give_item(id,"weapon_knife")
        case 
30:
        {
            
fm_give_item(id,"weapon_p90")
            
set_pdata_int(id,OFFSET_FIVESEVEN_AMMO,AMMO_P90,linuxdiff)
        }
        case 
31:fm_give_item(id,"item_kevlar")
        case 
32:fm_give_item(id,"item_assaultsuit")
    }
    
//lower the weapons number whit 1
    
left-=1
    set_pev
(weapon,WP_Left,left)
    
    
//set refill
    
if(pcvar != 0)set_pev(weapon, pev_nextthink, get_gametime() + Time)
    
    
//if nothing left make invisiable
    
if(!left)
    {
        
set_pev(weapon, pev_renderfx, kRenderFxNone)
        
set_pev(weapon, pev_rendercolor, {0.0,0.0,0.0})
        
set_pev(weapon, pev_rendermode, kRenderTransAlpha)
        
set_pev(weapon, pev_renderamt, 0.0)
    }
}
public 
Forward_Think(ent)
{
    if(!
pev_valid(ent))return
    
    static 
classname[32]
    
pev(ent, pev_classname, classname, 31)
    
    
//not our weapon
    
if(!equal(classname, wp_ent))return
    
    
//get values
    
classname[0] = pev(ent,WP_Max)
    
classname[1] = pev(ent,WP_Left)
    
    
//if its full return
    
if(classname[1] == classname[0])return
    
    
//if invisiable
    
if(!classname[1])
    {
        
set_pev(ent, pev_renderfx, kRenderNormal)
        
set_pev(ent, pev_rendercolor, {255.0,255.0,255.0})
        
set_pev(ent, pev_rendermode, kRenderTransAlpha)
        
set_pev(ent, pev_renderamt, 255.0)
    }
    
    
//add
    
classname[1] +=pcvar
    
    
//set it
    
if(classname[1] > classname[0])set_pev(ent,WP_Left,classname[0])
    else 
set_pev(ent,WP_Left,classname[1])
    
    if(
classname[1] != classname[0])set_pev(ent, pev_nextthink, get_gametime() + Time)
}
public 
Menu(id,nr)
{
    
//not havign kick flag
    
if(!(get_user_flags(id, 0) & ADMIN_KICK))return PLUGIN_CONTINUE
    
    
new menu
    
switch(nr)
    {
        
//pages
        
case 1:
        {
            
menu = menu_create("\rSpawn A Weapon", "handler")
            
menu_additem(menu, "Rifles", "110" , 0)
            
menu_additem(menu, "Pistols", "111" , 0)
            
menu_additem(menu, "Others", "112" , 0)
        }
        case 
2:
        {
            
menu = menu_create("\rRifles", "handler")
            
menu_additem(menu, "Scout","3" , 0)
            
menu_additem(menu, "Autoshotgun","5" , 0)
            
menu_additem(menu, "Mac10","7" , 0)
            
menu_additem(menu, "Bullpup","8" , 0)
            
menu_additem(menu, "Ump45","12" , 0)
            
menu_additem(menu, "Krieg550","13" , 0)
            
menu_additem(menu, "Defender","14" , 0)
            
menu_additem(menu, "Clarion","15" , 0)
            
menu_additem(menu, "Awp","18" , 0)
            
menu_additem(menu, "Mp5","19", 0)
            
menu_additem(menu, "M249","20" , 0)
            
menu_additem(menu, "M3","21" , 0)
            
menu_additem(menu, "M4A1","22" , 0)
            
menu_additem(menu, "TMP","23", 0)
            
menu_additem(menu, "G3SG1","24" , 0)
            
menu_additem(menu, "sg552","27" , 0)
            
menu_additem(menu, "ak47","28" , 0)
            
menu_additem(menu, "P90","30", 0)
        }
        case 
3:
        {
            
menu = menu_create("\rPistols", "handler")
            
menu_additem(menu, "228compact","1",0)
            
menu_additem(menu, "fiveseven", "11" , 0)
            
menu_additem(menu, "usp", "16" , 0)
            
menu_additem(menu, "glock ", "17" , 0)
            
menu_additem(menu, "deagle", "26" , 0)
            
menu_additem(menu, "elite", "10" , 0)
        }
        case 
4:
        {
            
menu = menu_create("\rOthers", "handler")
            
menu_additem(menu, "hegrenade","4" , 0)
            
menu_additem(menu, "smokegrenade","9" , 0)
            
menu_additem(menu, "flashbang","25" , 0)
            
menu_additem(menu, "knife","29" , 0)
            
menu_additem(menu, "kevlar","31" , 0)
            
menu_additem(menu, "assaultsuit","32" , 0)
        }
        case 
5:
        {
            
menu = menu_create("\rNumber of Weapons", "handler")
            
menu_additem(menu, "1", "105" , 0)
            
menu_additem(menu, "2", "105" , 0)
            
menu_additem(menu, "3", "105" , 0)
            
menu_additem(menu, "4", "105" , 0)
            
menu_additem(menu, "5", "105" , 0)
            
menu_additem(menu, "10", "105" , 0)
            
menu_additem(menu, "15", "105" , 0)
            
menu_additem(menu, "20", "105" , 0)
            
menu_additem(menu, "30", "105" , 0)
            
menu_additem(menu, "40", "105" , 0)
            
menu_additem(menu, "50", "105" , 0)
            
menu_additem(menu, "75", "105" , 0)
            
menu_additem(menu, "100","105" , 0)
            
menu_additem(menu, "200","105" , 0)
        }
        default:{
            
menu = menu_create("\rWeapon Spawner", "handler")
            
menu_additem(menu, "Create A Spawn","100", 0)
            
menu_additem(menu, "Save Spawns","101", 0)
            
menu_additem(menu, "Load Spawns","102", 0)
            
menu_additem(menu, "Remove all normal Spawns","103", 0)
            
menu_additem(menu, "Remove all costum Spawns","104", 0)
        }
    }
    
//show menu
    
menu_setprop(menu , MPROP_EXIT , MEXIT_ALL)
    
menu_display(id , menu , 0)
    return 
PLUGIN_HANDLED
}
public 
handler(id, menu, item)
{
    
//if hes dead or he choiced exit close
    
if(item == MENU_EXIT||!is_user_alive(id))
    {
        
menu_destroy(menu)
        return
    }
    
//get info
    
new data[5], iName[11]
    new 
access, callback
    menu_item_getinfo
(menu, item, access, data,4, iName, 10, callback)
    
    
data[0] = str_to_num(data)
    switch(
data[0])
    {
        case 
1..32:
        {
            
            
Selected[id] = data[0]
            
Menu(id,5)
        }
        case 
100:Menu(id,1)
        case 
110:Menu(id,2)
        case 
111:Menu(id,3)
        case 
112:Menu(id,4)
        case 
101:
        {
            
save()
            
Menu(id,0)
            
client_print(id,print_chat,"[WS] All costum spawns have been saved")
        }
        case 
102:
        {
            
load()
            
Menu(id,0)
            
client_print(id,print_chat,"[WS] All costum spawns have been loaded")
        }
        case 
103:
        {
            
Menu(id,0)
            
remove_normal()
            
client_print(id,print_chat,"[WS] All normal spawns have been removed")
        }
        case 
104:
        {
            
Menu(id,0)    
            
remove_costum()
            
client_print(id,print_chat,"[WS] All costum spawns have been removed")
        }
        case 
105:
        {
            
Menu(id,0)
            new 
Float:origin[3]
            
pev(id,pev_origin,origin)
            
origin[2]+=30.0
            set_pev
(id,pev_origin,origin)
            
origin[2]-=30.0
            create_weapon
(Selected[id],str_to_num(iName),origin)
            
client_print(id,print_chat,"[WS] You have created a new spawn")
        }
    }
    
menu_destroy(menu)
}
public 
remove_normal()
{
    new 
weapon
    
    
while((weapon = engfunc(EngFunc_FindEntityByString, weapon, "classname", "armoury_entity")) != 0)if(!pev(weapon,WP_Type))engfunc(EngFunc_RemoveEntity,weapon)
}
public 
remove_costum()
{
    new 
weapon
    
while((weapon = engfunc(EngFunc_FindEntityByString, weapon, "classname", wp_ent)) != 0)if(pev(weapon,WP_Type)!= 0)engfunc(EngFunc_RemoveEntity,weapon)
}
public 
load()
{
    new 
config[50],Info[41],map[30],data[5][11],Float:origin[3]
    
get_configsdir(config,29)
    
get_mapname(map,29)
    
formatex(config,49,"%s/ws/%s.ini",config,map)
    if(!
file_exists(config))return
    
    new 
File = fopen(config,"r")
    if(
File)
    {
        while(
fgets(File,Info,40))
        {
            
parse(Info, data[0], 5, data[1], 5,data[2], 10, data[3], 10, data[4], 10)
            
            if(!
data[0][0])data[0][0] = 48
            origin
[0] = str_to_float(data[2])
            
origin[1] = str_to_float(data[3])
            
origin[2] = str_to_float(data[4])
            
            
create_weapon(str_to_num(data[0]),str_to_num(data[1]),origin)
        }
    }
    
fclose(File)
}
public 
reset()
{
    new 
value,weapon
    
while((weapon = engfunc(EngFunc_FindEntityByString, weapon, "classname", wp_ent)) != 0)
    {
        
value=pev(weapon,WP_Left)
        if(!
value)
        {
            
set_pev(weapon, pev_renderfx, kRenderNormal)
            
set_pev(weapon, pev_rendercolor, {255.0,255.0,255.0})
            
set_pev(weapon, pev_rendermode, kRenderTransAlpha)
            
set_pev(weapon, pev_renderamt, 255.0)
            
        }
        
value=pev(weapon,WP_Max)
        
set_pev(weapon,WP_Left,value)
        
    }
}

public 
save()
{
    new 
config[50],Info[41],map[30],Float:origin[3]
    
get_configsdir(config,29)
    
get_mapname(map,29)
    
formatex(config,49,"%s/ws/%s.ini",config,map)
    if(
file_exists(config))delete_file(config)
    
    new 
File = fopen(config,"w")
    if(
File)
    {
        
        new 
weapon
        
while((weapon = engfunc(EngFunc_FindEntityByString, weapon, "classname", wp_ent)) != 0)
        {
            
            
pev(weapon,pev_origin,origin)
            
formatex(Info,40,"%i %i %.2f %.2f %.2f",pev(weapon,WP_Type),pev(weapon,WP_Max),origin[0],origin[1],origin[2])
            
write_file(config,Info,-1)
        }    
    }
    
fclose(File)
}
public 
create_weapon(wid,count,Float:origin[])
{
    new 
weapon = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "func_wall"))
    
set_pev(weapon,pev_classname, wp_ent)
    switch(
wid)
    {
        case 
1:engfunc(EngFunc_SetModel, weapon, "models/w_p228.mdl")
        case 
2:engfunc(EngFunc_SetModel, weapon, "models/w_shield.mdl")
        case 
3:engfunc(EngFunc_SetModel, weapon, "models/w_scout.mdl")
        case 
4:engfunc(EngFunc_SetModel, weapon, "models/w_hegrenade.mdl")
        case 
5:engfunc(EngFunc_SetModel, weapon, "models/w_xm1014.mdl")
        case 
7:engfunc(EngFunc_SetModel, weapon, "models/w_mac10.mdl")
        case 
8:engfunc(EngFunc_SetModel, weapon, "models/w_aug.mdl")
        case 
9:engfunc(EngFunc_SetModel, weapon, "models/w_smokegrenade.mdl")
        case 
10:engfunc(EngFunc_SetModel, weapon, "models/w_elite.mdl")
        case 
11:engfunc(EngFunc_SetModel, weapon, "models/w_fiveseven.mdl")
        case 
12:engfunc(EngFunc_SetModel, weapon, "models/w_ump45.mdl")
        case 
13:engfunc(EngFunc_SetModel, weapon, "models/w_sg550.mdl")
        case 
14:engfunc(EngFunc_SetModel, weapon, "models/w_galil.mdl")
        case 
15:engfunc(EngFunc_SetModel, weapon, "models/w_famas.mdl")
        case 
16:engfunc(EngFunc_SetModel, weapon, "models/w_usp.mdl")
        case 
17:engfunc(EngFunc_SetModel, weapon, "models/w_glock18.mdl")
        case 
18:engfunc(EngFunc_SetModel, weapon, "models/w_awp.mdl")
        case 
19:engfunc(EngFunc_SetModel, weapon, "models/w_mp5navy.mdl")
        case 
20:engfunc(EngFunc_SetModel, weapon, "models/w_m249.mdl")
        case 
21:engfunc(EngFunc_SetModel, weapon, "models/w_m3.mdl")
        case 
22:engfunc(EngFunc_SetModel, weapon, "models/w_m4a1.mdl")
        case 
23:engfunc(EngFunc_SetModel, weapon, "models/w_tmp.mdl")
        case 
24:engfunc(EngFunc_SetModel, weapon, "models/w_g3sg1.mdl")
        case 
25:engfunc(EngFunc_SetModel, weapon, "models/w_flashbang.mdl")
        case 
26:engfunc(EngFunc_SetModel, weapon, "models/w_deagle.mdl")
        case 
27:engfunc(EngFunc_SetModel, weapon, "models/w_sg552.mdl")
        case 
28:engfunc(EngFunc_SetModel, weapon, "models/w_ak47.mdl")
        case 
29:engfunc(EngFunc_SetModel, weapon, "models/w_knife.mdl")
        case 
30:engfunc(EngFunc_SetModel, weapon, "models/w_p90.mdl")
        case 
31:engfunc(EngFunc_SetModel, weapon, "models/w_kevlar.mdl")    
        case 
32:engfunc(EngFunc_SetModel, weapon, "models/w_assault.mdl")
    }
    
engfunc(EngFunc_SetSize, weapon, {-2.0,-2.0,-2.0},{2.0,2.0,2.0})
    
set_pev(weapon,pev_solid,2)
    
set_pev(weapon,pev_origin,origin)
    
    
set_pev(weapon,WP_Type,wid)
    
set_pev(weapon,WP_Left,count)
    
set_pev(weapon,WP_Max,count)
    
engfunc(EngFunc_DropToFloor, weapon)
}
// based on Basic-Master's set_keyvalue, upgraded version accepts an optional classname (a bit more efficient if it is passed)
stock fm_set_kvd(entity, const key[], const value[], const classname[] = "")
{
    if (
classname[0])set_kvd(0, KV_ClassName, classname)
    else
    {
        new class[
32]
        
pev(entity, pev_classname, class, sizeof class - 1)
        
set_kvd(0, KV_ClassName, class)
    }
    
    
set_kvd(0, KV_KeyName, key)
    
set_kvd(0, KV_Value, value)
    
set_kvd(0, KV_fHandled, 0)
    
    return 
dllfunc(DLLFunc_KeyValue, entity, 0)
}
stock fm_give_item(index, const item[])
{
    
    new 
ent =  engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
    if (!
pev_valid(ent))return 0;
    
    new 
Float:origin[3];
    
pev(index, pev_origin, origin);
    
set_pev(ent, pev_origin, origin);
    
set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN);
    
dllfunc(DLLFunc_Spawn, ent);
    
    new 
save = pev(ent, pev_solid);
    
dllfunc(DLLFunc_Touch, ent, index);
    if(
pev(ent, pev_solid) != save)return ent;
    
    
engfunc(EngFunc_RemoveEntity, ent);
    
    return -
1;
} 
Steam:Tıkla • Discord: lynchk
RE: Haritaya Silah koyma
(13-08-2025, 22:08)Lynchk Adlı Kullanıcıdan Alıntı: Bu versiyonu deneyin;
PHP Kod:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
//ent name
#define wp_ent "weapon_entity"
//ent values
#define WP_Type pev_iuser4
#define WP_Left pev_iuser3
#define WP_Max  pev_iuser2
//primary and secondary weapons
#define PRIMARY_WEAPONS ((1<<CSW_SCOUT) | (1<<CSW_XM1014) | (1<<CSW_MAC10) | (1<<CSW_AUG) | (1<<CSW_UMP45) | (1<<CSW_SG550) | (1<<CSW_GALIL) | (1<<CSW_FAMAS) | (1<<CSW_AWP) | (1<<CSW_MP5NAVY) | (1<<CSW_M249) | (1<<CSW_M3) | (1<<CSW_M4A1) | (1<<CSW_TMP) | (1<<CSW_G3SG1) | (1<<CSW_SG552) | (1<<CSW_AK47) | (1<<CSW_P90))
#define SECONDARY_WEAPONS ((1<<CSW_P228) | (1<<CSW_ELITE) | (1<<CSW_FIVESEVEN) | (1<<CSW_USP) | (1<<CSW_GLOCK18) | (1<<CSW_DEAGLE))
//offsets
#define OFFSET_AWM_AMMO        377 
#define OFFSET_SCOUT_AMMO    378
#define OFFSET_PARA_AMMO    379
#define OFFSET_FAMAS_AMMO     380
#define OFFSET_M3_AMMO        381
#define OFFSET_USP_AMMO        382
#define OFFSET_FIVESEVEN_AMMO    383
#define OFFSET_DEAGLE_AMMO    384
#define OFFSET_P228_AMMO    385
#define OFFSET_GLOCK_AMMO    386
#define OFFSET_FLASH_AMMO    387
#define OFFSET_HE_AMMO        388
#define OFFSET_SMOKE_AMMO    389
#define OFFSET_C4_AMMO        390
#define linuxdiff        5
//ammo for each gun
#define AMMO_P228    52
#define AMMO_SCOUT    90
#define AMMO_Xm1014    32
#define AMMO_Mac10    100
#define AMMO_Aug    90
#define AMMO_Elite    120
#define AMMO_Fiveseven    100
#define AMMO_Ump45    100
#define AMMO_Sg550    90
#define AMMO_Galil    90
#define AMMO_Famas    90
#define AMMO_Usp    100
#define AMMO_Glock18    120
#define AMMO_Awp    30
#define AMMO_Mp5navy    120
#define AMMO_M249    200
#define AMMO_M3        32
#define AMMO_M4a1     90
#define AMMO_Tmp    120
#define AMMO_G3sg1    90
#define AMMO_Deagle    35
#define AMMO_Sg552    90
#define AMMO_Ak47    90
#define AMMO_P90    100
//array whit primary and secondary weapons
new const Secondary[] = {CSW_P228, CSW_ELITE, CSW_FIVESEVEN, CSW_USP, CSW_GLOCK18, CSW_DEAGLE};
new const 
Primary[]={CSW_SCOUT,CSW_XM1014,CSW_MAC10,CSW_AUG,CSW_UMP45,CSW_SG550,CSW_GALIL,CSW_FAMAS,CSW_AWP,CSW_MP5NAVY,CSW_M249,CSW_M3,CSW_M4A1,CSW_TMP,CSW_G3SG1,CSW_SG552,CSW_AK47,CSW_P90}            
//will store the weapon id after picking it on menu
new Selected[33]
new 
pcvar,Float:Time
public plugin_init()
{
    
register_plugin("Weapon Spawner", "1.3", "Fxfighter")
    
    
register_clcmd("ws_menu","Menu")
    
    
pcvar = register_cvar("ws_auto_remove","1")
    if(
get_pcvar_num(pcvar))remove_normal()
    
    
pcvar =    register_cvar("ws_auto_load","1")
    if(
get_pcvar_num(pcvar))load()
    
    
//regisetr reset cvar and get its value
    
pcvar =    register_cvar("ws_reset_round","1")
    if(
get_pcvar_num(pcvar))
    {
        
register_logevent("reset", 2, "1=Round_End") 
        
register_event("TextMsg", "reset", "a", "2=#Game_will_restart_in")
    }
    
pcvar =    register_cvar("ws_reset_gun","1")
    if(
get_pcvar_num(pcvar))
    {
        
register_forward(FM_Think, "Forward_Think")
        
        
pcvar = register_cvar("ws_reset_gun_time","10")
        
Time = get_pcvar_float(pcvar)
        
        
pcvar =    register_cvar("ws_reset_gun_amount","10")
        
pcvar = get_pcvar_num(pcvar)
    }
    
    
register_forward(FM_Touch,"Equip")
}
public 
Equip(id,weapon)
{
    if(!
pev_valid(weapon) || !pev_valid(id) )return
    static 
classname[20]
    
pev(weapon, pev_classname, classname,19)    
    if(!
equal(classname,wp_ent))return
    
    static 
left,type,i
    left 
= pev(weapon,WP_Left)
    if(!
left)return
    
type = pev(weapon,WP_Type)
    
    
//check if its a primary
    
if(PRIMARY_WEAPONS & ( 1 << type))
    {
        for (
i = 0; i < sizeof Primary; ++i)
        {
            
//cant have more then 1 primary
            
if(user_has_weapon(id,Primary[i]))return
        }
    }
    
//check if its secondary
    
else if(SECONDARY_WEAPONS & ( 1 << type))
    {
        for (
i = 0; i < sizeof Secondary; ++i)
        {
            
//cant have more then 2 secondary
            
if(user_has_weapon(id,Secondary[i]))return
        }
    }
    
//if its armor
    
else if(type == 31||type==32)
    {
        
//cant have moret hen 100 in armor
        
if(pev(id,pev_armorvalue) == 100.0)return
    }
    
//if its granade or knife and he already got one
    
else if(user_has_weapon(id,type))return
    
    
//give weapon and ammo
    
switch(type)
    {
        case 
1 :
        {
            
fm_give_item(id,"weapon_p228")
            
set_pdata_int(id,OFFSET_P228_AMMO,AMMO_P228,linuxdiff)
        }
        case 
2 :fm_give_item(id,"weapon_shield")
        case 
3 :
        {
            
fm_give_item(id,"weapon_scout")
            
set_pdata_int(id,OFFSET_SCOUT_AMMO,AMMO_SCOUT,linuxdiff)
        }
        case 
4 :
        {
            
fm_give_item(id,"weapon_hegrenade")
            
//set_pdata_int(id,OFFSET_HE_AMMO,amount,linuxdiff)
        
}
        case 
5 :
        {
            
fm_give_item(id,"weapon_xm1014")
            
set_pdata_int(id,OFFSET_M3_AMMO,AMMO_Xm1014,linuxdiff)
        }
        case 
7 :
        {
            
fm_give_item(id,"weapon_mac10")
            
set_pdata_int(id,OFFSET_USP_AMMO,AMMO_Mac10,linuxdiff)
        }
        case 
8 :
        {
            
fm_give_item(id,"weapon_aug")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Aug,linuxdiff)
        }
        case 
9 :
        {
            
fm_give_item(id,"weapon_smokegrenade")
            
//set_pdata_int(id,OFFSET_SMOKE_AMMO,amount,linuxdiff)
        
}
            
        case 
10:
        {
            
fm_give_item(id,"weapon_elite")
            
set_pdata_int(id,OFFSET_GLOCK_AMMO,AMMO_Elite,linuxdiff)
        }
        case 
11:
        {
            
fm_give_item(id,"weapon_fiveseven")
            
set_pdata_int(id,OFFSET_FIVESEVEN_AMMO,AMMO_Fiveseven,linuxdiff)
        }
        case 
12:
        {
            
fm_give_item(id,"weapon_ump45")
            
set_pdata_int(id,OFFSET_USP_AMMO,AMMO_Ump45,linuxdiff)
        }
        case 
13:
        {
            
fm_give_item(id,"weapon_sg550")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Sg550,linuxdiff)
        }
        case 
14:
        {
            
fm_give_item(id,"weapon_galil")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Galil,linuxdiff)
        }
        case 
15:
        {
            
fm_give_item(id,"weapon_famas")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Famas,linuxdiff)
        }
        case 
16:
        {
            
fm_give_item(id,"weapon_usp")
            
set_pdata_int(id,OFFSET_USP_AMMO,AMMO_Usp,linuxdiff)
        }
        case 
17:
        {
            
fm_give_item(id,"weapon_glock18")
            
set_pdata_int(id,OFFSET_GLOCK_AMMO,AMMO_Glock18,linuxdiff)
        }
        case 
18:
        {
            
fm_give_item(id,"weapon_awp")
            
set_pdata_int(id,OFFSET_AWM_AMMO,AMMO_Awp,linuxdiff)
        }
        case 
19:
        {
            
fm_give_item(id,"weapon_mp5navy")
            
set_pdata_int(id,OFFSET_GLOCK_AMMO,AMMO_Mp5navy,linuxdiff)
        }
        case 
20:
        {
            
fm_give_item(id,"weapon_m249")
            
set_pdata_int(id,OFFSET_PARA_AMMO,AMMO_M249,linuxdiff)
        }
        case 
21:
        {
            
fm_give_item(id,"weapon_m3")
            
set_pdata_int(id,OFFSET_M3_AMMO,AMMO_M3,linuxdiff)
        }
        case 
22:
        {
            
fm_give_item(id,"weapon_m4a1")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_M4a1,linuxdiff)
        }
        case 
23:
        {
            
fm_give_item(id,"weapon_tmp")
            
set_pdata_int(id,OFFSET_GLOCK_AMMO,AMMO_Tmp,linuxdiff)
        }
        case 
24:
        {
            
fm_give_item(id,"weapon_g3sg1")
            
set_pdata_int(id,OFFSET_SCOUT_AMMO,AMMO_G3sg1,linuxdiff)
        }
        case 
25:
        {
            
fm_give_item(id,"weapon_flashbang")
            
//set_pdata_int(id,OFFSET_FLASH_AMMO,amount,linuxdiff)
        
}
        case 
26:
        {
            
fm_give_item(id,"weapon_deagle")
            
set_pdata_int(id,OFFSET_DEAGLE_AMMO,AMMO_Deagle,linuxdiff)
        }
        case 
27:
        {
            
fm_give_item(id,"weapon_sg552")
            
set_pdata_int(id,OFFSET_FAMAS_AMMO,AMMO_Sg552,linuxdiff)
        }
        case 
28:
        {
            
fm_give_item(id,"weapon_ak47")
            
set_pdata_int(id,OFFSET_SCOUT_AMMO,AMMO_Ak47,linuxdiff)
        }
        case 
29:fm_give_item(id,"weapon_knife")
        case 
30:
        {
            
fm_give_item(id,"weapon_p90")
            
set_pdata_int(id,OFFSET_FIVESEVEN_AMMO,AMMO_P90,linuxdiff)
        }
        case 
31:fm_give_item(id,"item_kevlar")
        case 
32:fm_give_item(id,"item_assaultsuit")
    }
    
//lower the weapons number whit 1
    
left-=1
    set_pev
(weapon,WP_Left,left)
    
    
//set refill
    
if(pcvar != 0)set_pev(weapon, pev_nextthink, get_gametime() + Time)
    
    
//if nothing left make invisiable
    
if(!left)
    {
        
set_pev(weapon, pev_renderfx, kRenderFxNone)
        
set_pev(weapon, pev_rendercolor, {0.0,0.0,0.0})
        
set_pev(weapon, pev_rendermode, kRenderTransAlpha)
        
set_pev(weapon, pev_renderamt, 0.0)
    }
}
public 
Forward_Think(ent)
{
    if(!
pev_valid(ent))return
    
    static 
classname[32]
    
pev(ent, pev_classname, classname, 31)
    
    
//not our weapon
    
if(!equal(classname, wp_ent))return
    
    
//get values
    
classname[0] = pev(ent,WP_Max)
    
classname[1] = pev(ent,WP_Left)
    
    
//if its full return
    
if(classname[1] == classname[0])return
    
    
//if invisiable
    
if(!classname[1])
    {
        
set_pev(ent, pev_renderfx, kRenderNormal)
        
set_pev(ent, pev_rendercolor, {255.0,255.0,255.0})
        
set_pev(ent, pev_rendermode, kRenderTransAlpha)
        
set_pev(ent, pev_renderamt, 255.0)
    }
    
    
//add
    
classname[1] +=pcvar
    
    
//set it
    
if(classname[1] > classname[0])set_pev(ent,WP_Left,classname[0])
    else 
set_pev(ent,WP_Left,classname[1])
    
    if(
classname[1] != classname[0])set_pev(ent, pev_nextthink, get_gametime() + Time)
}
public 
Menu(id,nr)
{
    
//not havign kick flag
    
if(!(get_user_flags(id, 0) & ADMIN_KICK))return PLUGIN_CONTINUE
    
    
new menu
    
switch(nr)
    {
        
//pages
        
case 1:
        {
            
menu = menu_create("\rSpawn A Weapon", "handler")
            
menu_additem(menu, "Rifles", "110" , 0)
            
menu_additem(menu, "Pistols", "111" , 0)
            
menu_additem(menu, "Others", "112" , 0)
        }
        case 
2:
        {
            
menu = menu_create("\rRifles", "handler")
            
menu_additem(menu, "Scout","3" , 0)
            
menu_additem(menu, "Autoshotgun","5" , 0)
            
menu_additem(menu, "Mac10","7" , 0)
            
menu_additem(menu, "Bullpup","8" , 0)
            
menu_additem(menu, "Ump45","12" , 0)
            
menu_additem(menu, "Krieg550","13" , 0)
            
menu_additem(menu, "Defender","14" , 0)
            
menu_additem(menu, "Clarion","15" , 0)
            
menu_additem(menu, "Awp","18" , 0)
            
menu_additem(menu, "Mp5","19", 0)
            
menu_additem(menu, "M249","20" , 0)
            
menu_additem(menu, "M3","21" , 0)
            
menu_additem(menu, "M4A1","22" , 0)
            
menu_additem(menu, "TMP","23", 0)
            
menu_additem(menu, "G3SG1","24" , 0)
            
menu_additem(menu, "sg552","27" , 0)
            
menu_additem(menu, "ak47","28" , 0)
            
menu_additem(menu, "P90","30", 0)
        }
        case 
3:
        {
            
menu = menu_create("\rPistols", "handler")
            
menu_additem(menu, "228compact","1",0)
            
menu_additem(menu, "fiveseven", "11" , 0)
            
menu_additem(menu, "usp", "16" , 0)
            
menu_additem(menu, "glock ", "17" , 0)
            
menu_additem(menu, "deagle", "26" , 0)
            
menu_additem(menu, "elite", "10" , 0)
        }
        case 
4:
        {
            
menu = menu_create("\rOthers", "handler")
            
menu_additem(menu, "hegrenade","4" , 0)
            
menu_additem(menu, "smokegrenade","9" , 0)
            
menu_additem(menu, "flashbang","25" , 0)
            
menu_additem(menu, "knife","29" , 0)
            
menu_additem(menu, "kevlar","31" , 0)
            
menu_additem(menu, "assaultsuit","32" , 0)
        }
        case 
5:
        {
            
menu = menu_create("\rNumber of Weapons", "handler")
            
menu_additem(menu, "1", "105" , 0)
            
menu_additem(menu, "2", "105" , 0)
            
menu_additem(menu, "3", "105" , 0)
            
menu_additem(menu, "4", "105" , 0)
            
menu_additem(menu, "5", "105" , 0)
            
menu_additem(menu, "10", "105" , 0)
            
menu_additem(menu, "15", "105" , 0)
            
menu_additem(menu, "20", "105" , 0)
            
menu_additem(menu, "30", "105" , 0)
            
menu_additem(menu, "40", "105" , 0)
            
menu_additem(menu, "50", "105" , 0)
            
menu_additem(menu, "75", "105" , 0)
            
menu_additem(menu, "100","105" , 0)
            
menu_additem(menu, "200","105" , 0)
        }
        default:{
            
menu = menu_create("\rWeapon Spawner", "handler")
            
menu_additem(menu, "Create A Spawn","100", 0)
            
menu_additem(menu, "Save Spawns","101", 0)
            
menu_additem(menu, "Load Spawns","102", 0)
            
menu_additem(menu, "Remove all normal Spawns","103", 0)
            
menu_additem(menu, "Remove all costum Spawns","104", 0)
        }
    }
    
//show menu
    
menu_setprop(menu , MPROP_EXIT , MEXIT_ALL)
    
menu_display(id , menu , 0)
    return 
PLUGIN_HANDLED
}
public 
handler(id, menu, item)
{
    
//if hes dead or he choiced exit close
    
if(item == MENU_EXIT||!is_user_alive(id))
    {
        
menu_destroy(menu)
        return
    }
    
//get info
    
new data[5], iName[11]
    new 
access, callback
    menu_item_getinfo
(menu, item, access, data,4, iName, 10, callback)
    
    
data[0] = str_to_num(data)
    switch(
data[0])
    {
        case 
1..32:
        {
            
            
Selected[id] = data[0]
            
Menu(id,5)
        }
        case 
100:Menu(id,1)
        case 
110:Menu(id,2)
        case 
111:Menu(id,3)
        case 
112:Menu(id,4)
        case 
101:
        {
            
save()
            
Menu(id,0)
            
client_print(id,print_chat,"[WS] All costum spawns have been saved")
        }
        case 
102:
        {
            
load()
            
Menu(id,0)
            
client_print(id,print_chat,"[WS] All costum spawns have been loaded")
        }
        case 
103:
        {
            
Menu(id,0)
            
remove_normal()
            
client_print(id,print_chat,"[WS] All normal spawns have been removed")
        }
        case 
104:
        {
            
Menu(id,0)    
            
remove_costum()
            
client_print(id,print_chat,"[WS] All costum spawns have been removed")
        }
        case 
105:
        {
            
Menu(id,0)
            new 
Float:origin[3]
            
pev(id,pev_origin,origin)
            
origin[2]+=30.0
            set_pev
(id,pev_origin,origin)
            
origin[2]-=30.0
            create_weapon
(Selected[id],str_to_num(iName),origin)
            
client_print(id,print_chat,"[WS] You have created a new spawn")
        }
    }
    
menu_destroy(menu)
}
public 
remove_normal()
{
    new 
weapon
    
    
while((weapon = engfunc(EngFunc_FindEntityByString, weapon, "classname", "armoury_entity")) != 0)if(!pev(weapon,WP_Type))engfunc(EngFunc_RemoveEntity,weapon)
}
public 
remove_costum()
{
    new 
weapon
    
while((weapon = engfunc(EngFunc_FindEntityByString, weapon, "classname", wp_ent)) != 0)if(pev(weapon,WP_Type)!= 0)engfunc(EngFunc_RemoveEntity,weapon)
}
public 
load()
{
    new 
config[50],Info[41],map[30],data[5][11],Float:origin[3]
    
get_configsdir(config,29)
    
get_mapname(map,29)
    
formatex(config,49,"%s/ws/%s.ini",config,map)
    if(!
file_exists(config))return
    
    new 
File = fopen(config,"r")
    if(
File)
    {
        while(
fgets(File,Info,40))
        {
            
parse(Info, data[0], 5, data[1], 5,data[2], 10, data[3], 10, data[4], 10)
            
            if(!
data[0][0])data[0][0] = 48
            origin
[0] = str_to_float(data[2])
            
origin[1] = str_to_float(data[3])
            
origin[2] = str_to_float(data[4])
            
            
create_weapon(str_to_num(data[0]),str_to_num(data[1]),origin)
        }
    }
    
fclose(File)
}
public 
reset()
{
    new 
value,weapon
    
while((weapon = engfunc(EngFunc_FindEntityByString, weapon, "classname", wp_ent)) != 0)
    {
        
value=pev(weapon,WP_Left)
        if(!
value)
        {
            
set_pev(weapon, pev_renderfx, kRenderNormal)
            
set_pev(weapon, pev_rendercolor, {255.0,255.0,255.0})
            
set_pev(weapon, pev_rendermode, kRenderTransAlpha)
            
set_pev(weapon, pev_renderamt, 255.0)
            
        }
        
value=pev(weapon,WP_Max)
        
set_pev(weapon,WP_Left,value)
        
    }
}
public 
save()
{
    new 
config[50],Info[41],map[30],Float:origin[3]
    
get_configsdir(config,29)
    
get_mapname(map,29)
    
formatex(config,49,"%s/ws/%s.ini",config,map)
    if(
file_exists(config))delete_file(config)
    
    new 
File = fopen(config,"w")
    if(
File)
    {
        
        new 
weapon
        
while((weapon = engfunc(EngFunc_FindEntityByString, weapon, "classname", wp_ent)) != 0)
        {
            
            
pev(weapon,pev_origin,origin)
            
formatex(Info,40,"%i %i %.2f %.2f %.2f",pev(weapon,WP_Type),pev(weapon,WP_Max),origin[0],origin[1],origin[2])
            
write_file(config,Info,-1)
        }    
    }
    
fclose(File)
}
public 
create_weapon(wid,count,Float:origin[])
{
    new 
weapon = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "func_wall"))
    
set_pev(weapon,pev_classname, wp_ent)
    switch(
wid)
    {
        case 
1:engfunc(EngFunc_SetModel, weapon, "models/w_p228.mdl")
        case 
2:engfunc(EngFunc_SetModel, weapon, "models/w_shield.mdl")
        case 
3:engfunc(EngFunc_SetModel, weapon, "models/w_scout.mdl")
        case 
4:engfunc(EngFunc_SetModel, weapon, "models/w_hegrenade.mdl")
        case 
5:engfunc(EngFunc_SetModel, weapon, "models/w_xm1014.mdl")
        case 
7:engfunc(EngFunc_SetModel, weapon, "models/w_mac10.mdl")
        case 
8:engfunc(EngFunc_SetModel, weapon, "models/w_aug.mdl")
        case 
9:engfunc(EngFunc_SetModel, weapon, "models/w_smokegrenade.mdl")
        case 
10:engfunc(EngFunc_SetModel, weapon, "models/w_elite.mdl")
        case 
11:engfunc(EngFunc_SetModel, weapon, "models/w_fiveseven.mdl")
        case 
12:engfunc(EngFunc_SetModel, weapon, "models/w_ump45.mdl")
        case 
13:engfunc(EngFunc_SetModel, weapon, "models/w_sg550.mdl")
        case 
14:engfunc(EngFunc_SetModel, weapon, "models/w_galil.mdl")
        case 
15:engfunc(EngFunc_SetModel, weapon, "models/w_famas.mdl")
        case 
16:engfunc(EngFunc_SetModel, weapon, "models/w_usp.mdl")
        case 
17:engfunc(EngFunc_SetModel, weapon, "models/w_glock18.mdl")
        case 
18:engfunc(EngFunc_SetModel, weapon, "models/w_awp.mdl")
        case 
19:engfunc(EngFunc_SetModel, weapon, "models/w_mp5navy.mdl")
        case 
20:engfunc(EngFunc_SetModel, weapon, "models/w_m249.mdl")
        case 
21:engfunc(EngFunc_SetModel, weapon, "models/w_m3.mdl")
        case 
22:engfunc(EngFunc_SetModel, weapon, "models/w_m4a1.mdl")
        case 
23:engfunc(EngFunc_SetModel, weapon, "models/w_tmp.mdl")
        case 
24:engfunc(EngFunc_SetModel, weapon, "models/w_g3sg1.mdl")
        case 
25:engfunc(EngFunc_SetModel, weapon, "models/w_flashbang.mdl")
        case 
26:engfunc(EngFunc_SetModel, weapon, "models/w_deagle.mdl")
        case 
27:engfunc(EngFunc_SetModel, weapon, "models/w_sg552.mdl")
        case 
28:engfunc(EngFunc_SetModel, weapon, "models/w_ak47.mdl")
        case 
29:engfunc(EngFunc_SetModel, weapon, "models/w_knife.mdl")
        case 
30:engfunc(EngFunc_SetModel, weapon, "models/w_p90.mdl")
        case 
31:engfunc(EngFunc_SetModel, weapon, "models/w_kevlar.mdl")    
        case 
32:engfunc(EngFunc_SetModel, weapon, "models/w_assault.mdl")
    }
    
engfunc(EngFunc_SetSize, weapon, {-2.0,-2.0,-2.0},{2.0,2.0,2.0})
    
set_pev(weapon,pev_solid,2)
    
set_pev(weapon,pev_origin,origin)
    
    
set_pev(weapon,WP_Type,wid)
    
set_pev(weapon,WP_Left,count)
    
set_pev(weapon,WP_Max,count)
    
engfunc(EngFunc_DropToFloor, weapon)
}
// based on Basic-Master's set_keyvalue, upgraded version accepts an optional classname (a bit more efficient if it is passed)
stock fm_set_kvd(entity, const key[], const value[], const classname[] = "")
{
    if (
classname[0])set_kvd(0, KV_ClassName, classname)
    else
    {
        new class[
32]
        
pev(entity, pev_classname, class, sizeof class - 1)
        
set_kvd(0, KV_ClassName, class)
    }
    
    
set_kvd(0, KV_KeyName, key)
    
set_kvd(0, KV_Value, value)
    
set_kvd(0, KV_fHandled, 0)
    
    return 
dllfunc(DLLFunc_KeyValue, entity, 0)
}
stock fm_give_item(index, const item[])
{
    
    new 
ent =  engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, item))
    if (!
pev_valid(ent))return 0;
    
    new 
Float:origin[3];
    
pev(index, pev_origin, origin);
    
set_pev(ent, pev_origin, origin);
    
set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN);
    
dllfunc(DLLFunc_Spawn, ent);
    
    new 
save = pev(ent, pev_solid);
    
dllfunc(DLLFunc_Touch, ent, index);
    if(
pev(ent, pev_solid) != save)return ent;
    
    
engfunc(EngFunc_RemoveEntity, ent);
    
    return -
1;
}
Yok hocam işe yaramadı maalesef aynı şekilde kaydetmiyor 

Yok hocam işe yaramadı maalesef aynı şekilde kaydetmiyor
Son Düzenleme: 13-08-2025, 22:11, Düzenleyen: BurakBy
RE: Haritaya Silah koyma
Configs içinde ws klasörünü silip map değiştirin.Daha sonra elinizle manuel ws klasörü oluşturun.
Silahları yerleştirdikten sonra tekrar save atıp deneyin.
Steam:Tıkla • Discord: lynchk

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Konuyu Okuyanlar: 1 Ziyaretçi