Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Say'den Silah Alma (Ha Gayret)
#11
PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

new gAwpPara
new gDeaglePara
new gM4a1Para
new gAk47Para

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd("say /awp","giveawp")
    
register_clcmd("say /deagle","givedeagle")
    
register_clcmd("say /m4a1","givem4a1")
    
register_clcmd("say /ak47","giveak47")
    
register_clcmd("say_team /awp","giveawp")
    
register_clcmd("say_team /deagle","givedeagle")
    
register_clcmd("say_team /m4a1","givem4a1")
    
register_clcmd("say_team /ak47","giveak47")
    
    
    
gAwpPara register_cvar("amx_awppara","4750")
    
gDeaglePara register_cvar("amx_deaglepara","650")
    
gM4a1Para register_cvar("amx_m4a1para","3100")
    
gAk47Para register_cvar("amx_ak47para","2500")
    
}

public 
giveawp(id) {
    new 
AwpPara get_pcvar_num(gAwpPara)
    if(
cs_get_user_money(id) < AwpPara) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",AwpPara)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,18)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"Awp Satin Aldiniz!")
    
cs_set_user_money(id,cs_get_user_money(id) - AwpPara)
    
give_item(id,"weapon_awp")
    
cs_set_user_bpammo(id,CSW_AWP,30)
    return 
PLUGIN_HANDLED
}

public 
givedeagle(id) {
    new 
DgPara get_pcvar_num(gDeaglePara)
    if(
cs_get_user_money(id) < DgPara) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",DgPara)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,26)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"Deagle Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - DgPara)
    
give_item(id,"weapon_deagle")
    
cs_set_user_bpammo(id,CSW_DEAGLE,35)
    return 
PLUGIN_HANDLED
}

public 
givem4a1(id) {
    new 
M4a1Para get_pcvar_num(gM4a1Para)
    if(
cs_get_user_money(id) < M4a1Para) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",M4a1Para)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,22)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
get_user_team(id) != 2) {
        
client_print(id,print_center,"Bu Silahi Almak icin CT Olman Gerekiyor!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"M4a1 Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - M4a1Para)
    
give_item(id,"weapon_m4a1")
    
cs_set_user_bpammo(id,CSW_M4A1,90)
    return 
PLUGIN_HANDLED
}

public 
giveak47(id) {
    new 
Ak47Para get_pcvar_num(gAk47Para)
    if(
cs_get_user_money(id) < Ak47Para) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",Ak47Para)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,28)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
get_user_team(id) != 1) {
        
client_print(id,print_center,"Bu Silahi Almak icin T Olman Gerekiyor!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"Ak47 Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - Ak47Para)
    
give_item(id,"weapon_ak47")
    
cs_set_user_bpammo(id,CSW_AK47,90)
    return 
PLUGIN_HANDLED


İkincil silahı kontrol etmek için bir kaç kod buldum fakat çok fazla karışıktı, ikincil silahı nasıl kontrol edebilirim?
uhcakiP
Özel Plugin Kodlanır!

Steam_ID = STEAM_0:0:54912140
Steam_Nick = Ragnar Lothbrok
https://steamcommunity.com/id/lothbrok
Reply
#12
Evet ikincil silah için hazır fonksiyon yok. Ama kendimiz yazabiliriz Smile

https://www.csplague.com/kod-pawn-script...post226815


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply
#13
Bende diyordum; şimdi istediğimiz herşeyin kodu var mı? ya yoksa ne yapıcaz? demek Stocklar bu işe yarıyomuş Smile

Pluginin Son Hali:
PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

new gAwpPara
new gDeaglePara
new gM4a1Para
new gAk47Para

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd("say /awp","giveawp")
    
register_clcmd("say /deagle","givedeagle")
    
register_clcmd("say /m4a1","givem4a1")
    
register_clcmd("say /ak47","giveak47")
    
register_clcmd("say_team /awp","giveawp")
    
register_clcmd("say_team /deagle","givedeagle")
    
register_clcmd("say_team /m4a1","givem4a1")
    
register_clcmd("say_team /ak47","giveak47")
    
    
    
gAwpPara register_cvar("amx_awppara","4750")
    
gDeaglePara register_cvar("amx_deaglepara","650")
    
gM4a1Para register_cvar("amx_m4a1para","3100")
    
gAk47Para register_cvar("amx_ak47para","2500")
    
}

public 
giveawp(id) {
    new 
AwpPara get_pcvar_num(gAwpPara)
    if(
cs_get_user_money(id) < AwpPara) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",AwpPara)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,18)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"Awp Satin Aldiniz!")
    
cs_set_user_money(id,cs_get_user_money(id) - AwpPara)
    
give_item(id,"weapon_awp")
    
cs_set_user_bpammo(id,CSW_AWP,30)
    return 
PLUGIN_HANDLED
}

public 
givedeagle(id) {
    new 
DgPara get_pcvar_num(gDeaglePara)
    if(
cs_get_user_money(id) < DgPara) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",DgPara)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,26)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    if(
has_user_secondary(id)) { 
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!"
        return 
PLUGIN_HANDLED 
    
}  
    
client_print(id,print_center,"Deagle Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - DgPara)
    
give_item(id,"weapon_deagle")
    
cs_set_user_bpammo(id,CSW_DEAGLE,35)
    return 
PLUGIN_HANDLED
}

public 
givem4a1(id) {
    new 
M4a1Para get_pcvar_num(gM4a1Para)
    if(
cs_get_user_money(id) < M4a1Para) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",M4a1Para)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,22)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
get_user_team(id) != 2) {
        
client_print(id,print_center,"Bu Silahi Almak icin CT Olman Gerekiyor!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"M4a1 Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - M4a1Para)
    
give_item(id,"weapon_m4a1")
    
cs_set_user_bpammo(id,CSW_M4A1,90)
    return 
PLUGIN_HANDLED
}

public 
giveak47(id) {
    new 
Ak47Para get_pcvar_num(gAk47Para)
    if(
cs_get_user_money(id) < Ak47Para) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",Ak47Para)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,28)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
get_user_team(id) != 1) {
        
client_print(id,print_center,"Bu Silahi Almak icin T Olman Gerekiyor!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"Ak47 Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - Ak47Para)
    
give_item(id,"weapon_ak47")
    
cs_set_user_bpammo(id,CSW_AK47,90)
    return 
PLUGIN_HANDLED
}

stock has_user_secondaryindex ) { 
    
    new 
weapons[32],inum
    
get_user_weapons(index,weapons,inum
    for( new 
ii<inum i++ ) { 
        switch(
weapons[i]) { 
            case 
CSW_ELITE,CSW_DEAGLECSW_FIVESEVENCSW_GLOCK18CSW_USPCSW_P228: { 
                return 
1
            } 
        } 
    } 
    return 
0
    


Aklıma gelen bütün bugları kapattım, sanıyorum ki zaten sadece bu kadar bug var.
Bu arada önerilerini dinleyerek devam ediyorum; aklıma gelen bi plugini cvar ayarlarıyla destekliyip olabilicek en gelişmiş hale getirdim fakat şimdi yapmak istediğim şey bunu bir menü haline getirmek. Bunun için public leri case lerin içine mi yazıcam?, bahsettiğim şey:
PHP Code:
case 1: {
public 
giveawp(id) {
    new 
AwpPara get_pcvar_num(gAwpPara)
    if(
cs_get_user_money(id) < AwpPara) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",AwpPara)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,18)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"Awp Satin Aldiniz!")
    
cs_set_user_money(id,cs_get_user_money(id) - AwpPara)
    
give_item(id,"weapon_awp")
    
cs_set_user_bpammo(id,CSW_AWP,30)
    return 
PLUGIN_HANDLED
}


Yoksa case'e sadece giveawp(id) kısmını mı tanıtıcam? eğer sadece giveawp(id) kısmını tanıtıcaksam, nasıl olucak Big Grin
uhcakiP
Özel Plugin Kodlanır!

Steam_ID = STEAM_0:0:54912140
Steam_Nick = Ragnar Lothbrok
https://steamcommunity.com/id/lothbrok
Reply
#14
Zaten kullandığın fonksiyonların çoğu bir kütüphane dosyasında veya modülde bu şekilde tanımlanıyor. Kullandığın her fonksiyon bir yerlerde tanımlı Smile Stock, public vs kullanarak biz de tanımlanmamış fonksiyonları tanımlıyoruz

public, fonksiyon tanımlamak için kullanılır. Case'in içinde fonksiyon tanımlayamazsın. Sadece kullanabilirsin. Bu yüzden başka bir yerde fonksiyonları public ile tanıtıp, case de ise çağırıcaksın. Fonksiyon çağırma işlemi ise oldukça basit Smile

Fonksiyon_Adi( parametreler )

Örneğin:
public giveawp(id)
var ise case'in içine
giveawp(id)
yazarak fonksiyonun çağrılmasını sağlayabilirsin. Artı, menü yaparken, switch kullanmak zorunda değilsin. Bu işlemi switch kullanmadan da yapabilirsin. Ama senin için biraz zor olabilir Smile Sen kendine göre yap. Ben daha sonra pratik yolunu gösteririm


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply
#15
akcaliberkk dateline='' Wrote: Zaten kullandığın fonksiyonların çoğu bir kütüphane dosyasında veya modülde bu şekilde tanımlanıyor. Kullandığın her fonksiyon bir yerlerde tanımlı Smile Stock, public vs kullanarak biz de tanımlanmamış fonksiyonları tanımlıyoruz

public, fonksiyon tanımlamak için kullanılır. Case'in içinde fonksiyon tanımlayamazsın. Sadece kullanabilirsin. Bu yüzden başka bir yerde fonksiyonları public ile tanıtıp, case de ise çağırıcaksın. Fonksiyon çağırma işlemi ise oldukça basit Smile

Fonksiyon_Adi( parametreler )

Örneğin:
public giveawp(id)
var ise case'in içine
giveawp(id)
yazarak fonksiyonun çağrılmasını sağlayabilirsin. Artı, menü yaparken, switch kullanmak zorunda değilsin. Bu işlemi switch kullanmadan da yapabilirsin. Ama senin için biraz zor olabilir Smile Sen kendine göre yap. Ben daha sonra pratik yolunu gösteririm

PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

new gAwpPara
new gDeaglePara
new gM4a1Para
new gAk47Para

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd("say /buy","buymenu")
    
register_clcmd("say_team /buy","buymenu")
    
register_clcmd("say /awp","giveawp")
    
register_clcmd("say /deagle","givedeagle")
    
register_clcmd("say /m4a1","givem4a1")
    
register_clcmd("say /ak47","giveak47")
    
register_clcmd("say_team /awp","giveawp")
    
register_clcmd("say_team /deagle","givedeagle")
    
register_clcmd("say_team /m4a1","givem4a1")
    
register_clcmd("say_team /ak47","giveak47")
    
    
    
gAwpPara register_cvar("amx_awppara","4750")
    
gDeaglePara register_cvar("amx_deaglepara","650")
    
gM4a1Para register_cvar("amx_m4a1para","3100")
    
gAk47Para register_cvar("amx_ak47para","2500")
    
}



public 
giveawp(id) {
    new 
AwpPara get_pcvar_num(gAwpPara)
    if(
cs_get_user_money(id) < AwpPara) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",AwpPara)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,18)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"Awp Satin Aldiniz!")
    
cs_set_user_money(id,cs_get_user_money(id) - AwpPara)
    
give_item(id,"weapon_awp")
    
cs_set_user_bpammo(id,CSW_AWP,30)
    return 
PLUGIN_HANDLED
}

public 
givedeagle(id) {
    new 
DgPara get_pcvar_num(gDeaglePara)
    if(
cs_get_user_money(id) < DgPara) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",DgPara)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,26)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    if(
has_user_secondary(id)) { 
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!"
        return 
PLUGIN_HANDLED 
    
}  
    
client_print(id,print_center,"Deagle Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - DgPara)
    
give_item(id,"weapon_deagle")
    
cs_set_user_bpammo(id,CSW_DEAGLE,35)
    return 
PLUGIN_HANDLED
}

public 
givem4a1(id) {
    new 
M4a1Para get_pcvar_num(gM4a1Para)
    if(
cs_get_user_money(id) < M4a1Para) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",M4a1Para)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,22)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
get_user_team(id) != 2) {
        
client_print(id,print_center,"Bu Silahi Almak icin CT Olman Gerekiyor!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"M4a1 Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - M4a1Para)
    
give_item(id,"weapon_m4a1")
    
cs_set_user_bpammo(id,CSW_M4A1,90)
    return 
PLUGIN_HANDLED
}

public 
giveak47(id) {
    new 
Ak47Para get_pcvar_num(gAk47Para)
    if(
cs_get_user_money(id) < Ak47Para) {
        
client_print(id,print_center,"Yeterli Paran Yok! %d$ Gerekli",Ak47Para)
        return 
PLUGIN_HANDLED
    
}
    if(!
is_user_alive(id)) {
        return 
PLUGIN_HANDLED
    
}
    if(
user_has_weapon(id,28)) {
        
client_print(id,print_center,"Bu Silaha Zaten Sahipsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_buyzone(id) != 1) {
        
client_print(id,print_center,"Burada Silah Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
get_user_team(id) != 1) {
        
client_print(id,print_center,"Bu Silahi Almak icin T Olman Gerekiyor!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_hasprim(id) != 0) {
        
client_print(id,print_center,"Zaten Silahin Var, Fazladan Alamazsin!")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_vip(id) != 0) {
        
client_print(id,print_center,"VIP'ler Bu Komutu Kullanamaz!")
        return 
PLUGIN_HANDLED
    
}
    
client_print(id,print_center,"Ak47 Satin Aldiniz")
    
cs_set_user_money(id,cs_get_user_money(id) - Ak47Para)
    
give_item(id,"weapon_ak47")
    
cs_set_user_bpammo(id,CSW_AK47,90)
    return 
PLUGIN_HANDLED
}

stock has_user_secondaryindex ) { 
    
    new 
weapons[32],inum
    
get_user_weapons(index,weapons,inum
    for( new 
ii<inum i++ ) { 
        switch(
weapons[i]) { 
            case 
CSW_ELITE,CSW_DEAGLECSW_FIVESEVENCSW_GLOCK18CSW_USPCSW_P228: { 
                return 
1
            } 
        } 
    } 
    return 
0
    
}

public 
buymenu (id) {
    new 
menu menu_create("Buy Menu","menu_handler")
    
    
menu_additem(menu,"AWP","1",0);
    
menu_additem(menu,"DEAGLE","2",0);
    
menu_additem(menu,"M4A1","3",0);
    
menu_additem(menu,"AK47","4",0);
    
    
menu_setprop(menu,MPROP_NEXTNAME,"ILERI>>")
    
menu_setprop(menu,MPROP_BACKNAME,"<<GERI")
    
menu_setprop(menu,MPROP_EXITNAME,"CIKIS");
    
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL);
    
menu_display(idmenu0);
    return 
PLUGIN_CONTINUE
}

public 
menu_handler(id,menu,item) {
    if(
item == MENU_EXIT) {
        
menu_destroy(menu)
    }
    
    new 
data[6]
    switch(
str_to_num(data))
    {
        case 
1: {
            
giveawp(id)
        }
        case 
2: {
            
givedeagle(id)
        }
        case 
3: {
            
givem4a1(id)
        }
        case 
4: {
            
giveak47(id)
        }
    }
    
menu_destroy(menu)


Menüyü yaptım fakat kafam karışmadı desem yalan olur.

PHP Code:
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL);
    
menu_display(idmenu0);

new 
data[6]
    switch(
str_to_num(data)) 

Bunları tam anlamadım, yani plugin de neyi karşılıyorlar ona anlam veremedim.

Birde yine plugini yaparken bir kod daha geldi aklıma, ben bu silah alımları buy gibi yapmak istesem, normal buy da elinizde hangi silahın olduğunun bir önemi yok yenisi alırsan elindekini yere atıyo ve yeni silah geliyo. Bunu nasıl yapabilirim. Yani bi oyuncunun elindeki silahı nasıl yere atabilirim?

Birde plugin sorunsuz bir şekilde compile edildi fakat merak ettiğim; mantık hatası olan bi yer mı?
uhcakiP
Özel Plugin Kodlanır!

Steam_ID = STEAM_0:0:54912140
Steam_Nick = Ragnar Lothbrok
https://steamcommunity.com/id/lothbrok
Reply
#16
Silahı silmek mi atmak mı istiyorsun?

eğer silmek istiyorsan;
PHP Code:
#include <fun>

// Silah Silme Fonksiyonu strip_user_weapons(index)
strip_user_weapons(id
fonksiyonunu kullan.
Steam ID: STEAM_1:0:70428872
Steam Name: Seps!s
Skype: jdm.csplague

Takdir ediliyorsan değil, Taklit ediliyorsan başarmışsın demektir.
Albert Einstein
Reply
#17
JDM dateline='' Wrote: Silahı silmek mi atmak mı istiyorsun?

eğer silmek istiyorsan;
PHP Code:
#include <fun>

// Silah Silme Fonksiyonu strip_user_weapons(index)
strip_user_weapons(id
fonksiyonunu kullan.

Atmak istiyorum;
Pikachu dateline='' Wrote: ...normal buy da elinizde hangi silahın olduğunun bir önemi yok yenisi alırsan elindekini yere atıyo ve yeni silah geliyo. Bunu nasıl yapabilirim. Yani bi oyuncunun elindeki silahı nasıl yere atabilirim?
uhcakiP
Özel Plugin Kodlanır!

Steam_ID = STEAM_0:0:54912140
Steam_Nick = Ragnar Lothbrok
https://steamcommunity.com/id/lothbrok
Reply
#18
menu_setprop( menu, prop, ...)

Menünün özelliklerini ayarlar.

properties:

MPROP_PERPAGE = Bir Sayfadaki Maksimum İtem Sayısı [default = 7] [ parametre türü = sayı ]
MPROP_BACKNAME = Geri tuşunun, görünecek olan ismi [ parametre türü = string ]
MPROP_NEXTNAME = İleri tuşunun, görünecek olan ismi [ parametre türü = string ]
MPROP_EXITNAME = Çıkış tuşunun, görünecek olan ismi [ parametre türü = string ]

Bu üçü zaten standart olarak İleri, Geri, Çıkış şeklinde ayarlıdır. Aynısını yazdığın sürece bunlara dokunmaya gerek yok.

MPROP_TITLE = Gereksiz. Menünün başlığını ayarlıyor. Halbuki menu_create ile başlığı ayarlayabiliyoruz.

MPROP_EXIT = Çıkış tuşunun fonksiyonunu ayarlar. İki farklı ayarı var:

MEXIT_ALL = Çıkış tuşu menüyü kapatır.
MEXIT_NEVER = Çıkış tuşu menüyü kapatmaz.


---------
Fonksiyon parametreleri;
menu_additem ( menu, item_adı[], info[], access = 0)

Örneğin;
menu_additem( menu, "AK47 Satin Al", "2")

Buradaki "2" yazısını, menu_handler da bu fonksiyon ile buluyoruz;

menu_item_getinfo ( menu , item , access , info[], infolen, name[], namelen, &callback)

Buradaki item, klavyeden basılan tuş.
access = item için gerekn yetki
info[] = menu_additem deki 3. parametre. Bu item ile ilgili oraya yazdığımız bilgiyi depoluyor. Biz "2" yazmıştık, bilgi olarak.
infolen = veriyi kaydettiğimiz değişkenin uzunluğu.
name[] = iteme girdiğimiz isim.
namelen = girilen ismi depolayan değişkenin uzunluğu
&callback = çok karışık bir olaydır. Neredeyse hiç işimize yaramıyor. Yetkisi olmayan kişilerin, menüdeki ilgili itemleri soluk renkte görmesini sağlayan bir özellik.

Bu fonksiyonu kullanarak item için girdiğimiz infoyu yani bilgiyi ( "2" idi), data[6] dizisinde depoladık.
Daha sonra bu bilgiyi switch de kullanmak için sayıya çevirdik

str_to_num [string to number]

Olay bundan ibaret. Eğer sayıya çevirmeseydik, birden çok haneli sayılarda sıkıntı yaşardık.

-----
Oyuncunun elindeki silahı attırmak istiyorsan;
client_cmd(index, "drop") Smile
------
Ve hatan şu; menu_item_getinfo kullanmamışsın. Yani ordaki data[6] değişkeni boş. Onu doldurman gerekiyordu.


Ek olarak data olayını kavraman ve stringleri formatlamayı anlaman için şöyle bir şey yaptım
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd("say /buy","buymenu")
    
register_clcmd("say_team /buy","buymenu")
    
}

public 
buymenu (id) {
    new 
menu menu_create("Buy Menu","menu_handler")
    
    
menu_additem(menu,"AWP","awp",0);
    
menu_additem(menu,"DEAGLE","deagle",0);
    
menu_additem(menu,"M4A1","m4a1",0);
    
menu_additem(menu,"AK47","ak47",0);
    
    
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL);
    
menu_display(idmenu0);
    return 
PLUGIN_CONTINUE
}

public 
menu_handler(id,menu,item) {
    if(
item == MENU_EXIT) {
        
menu_destroy(menu)
    }
    
    new 
data[10],name[32];
    new 
access,callback;
    
menu_item_getinfo(menu,item,access,data,9,name,31,callback)
    
    new 
item_name[32];
    
formatex(item_name,31,"weapon_%s",data)
    
give_item(id,item_name)
    
cs_set_user_bpammo(id,get_weaponid(item_name),90)
    
    
menu_destroy(menu)


Burda switch kullanmadım örneğin. Tabi sen her silah için bir sürü farklı koşul koymuşsun. Böyle durumlarda bunu kullanamazsın. Sadece ek bilgi olarak verdim.
Senin menu_item_getinfo dışında hatan yok. Onu da burdan öğrenebilirsin.


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply
#19
Menü işi biraz karışık geldi, en azından ana hatlarıyla anladım. Menu görünümünü yapıp, atadığımız sayılara case açıp, case içine olmasını istediğimizi yazıyoruz, buraya kadar bir problem yok. Fakat anlamadığım yer menu_item_getinfo oldu yada biraz garip geldi desem daha doğru olur. Başka pluginlerden ne amaçla kullanıldığına falan da bakıcam, öyle çözebileceğimi düşünüyorum.
Birde client_cmd(index,"drop") komutunu nasıl kullanacağımı çözemedim, herhangi bir public e yazınca, örneğin awp; awp yi alıyorum para falan eksiliyor ama awp yi yere atıyor. Oyuncunun elindeki silahı yere atıp awp'yi ele nasıl getirebilirim?
uhcakiP
Özel Plugin Kodlanır!

Steam_ID = STEAM_0:0:54912140
Steam_Nick = Ragnar Lothbrok
https://steamcommunity.com/id/lothbrok
Reply
#20
PHP Code:
stock drop_primary_weaponsindex ) {
    new 
weapons[32],inum;
    
get_user_weapons(index,weapons,inum)
    for(new 
i;i<inum;i++) {
        switch(
weapons[i]) {
            case 
CSW_DEAGLE,CSW_C4,CSW_ELITE,
            
CSW_FIVESEVEN,CSW_FLASHBANG,CSW_GLOCK18,
            
CSW_HEGRENADE,CSW_KNIFE,CSW_P228,
            
CSW_SMOKEGRENADE,CSW_USP,CSW_VEST,
            
CSW_VESTHELM:{
                continue;
            }
            default: {
                new 
weaponname[32];
                
get_weaponname(weapons,weaponname,31)
                
client_cmd(index,"drop %s",weaponname)
            }
        }
    }


Bu stocku kullan, awp publicinde awp yi oyuncuya vermeden önce bu kodla oyuncunun sahip olduğu tüm birincil silahları düşürmesini sağla. Yani önce bu kod sonra give_item ile awp ver[/i][/i]


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  El başı silah HijyeniK 2 4,685 10-02-18, 17:18
Last Post: Grafter
  Sağlam Bi Ct Silah Menüsü MintonS 3 4,808 12-05-15, 15:00
Last Post: messert
  Silah menüsü HijyeniK 8 5,239 20-02-15, 23:55
Last Post: eneskaraca55
  /hpmenu JB Pack ile HP Alma Ruther 14 6,327 30-01-15, 19:12
Last Post: Emir2005
  SIlah Menu yardım ugurdogan 5 7,749 27-07-14, 21:09
Last Post: ugurdogan
  Cs 1.6 Jail Server Açtım Ama T Doğduğunda ELine silah Geliyor Yardım starkovboy1 5 7,437 19-07-14, 20:47
Last Post: DeJaWuKiNq32
  [ISTEK] Yerden Silah Alma Serbest/Kapalı enharukalo 3 4,808 19-07-14, 06:19
Last Post: JellyB0N
  /silah sPeeXx 2 2,017 18-06-14, 13:42
Last Post: sPeeXx
  Random Silah KeNZ0 12 13,010 10-06-14, 17:25
Last Post: JDM
  Max Bir Silah ContineZz 7 8,660 28-05-14, 12:53
Last Post: JDM

Foruma Atla:


Users browsing this thread: 1 Guest(s)