CSPLague
Bayağı Hata Var Düzeltebilecek Buraya :) - Printable Version

+- CSPLague (https://www.csplague.com)
+-- Forum: CS 1.6 Plugin (Eklenti) Bölümü (https://www.csplague.com/forumdisplay.php?fid=6)
+--- Forum: [İSTEK] Cs 1.6 Plugin İstek Bölümü (https://www.csplague.com/forumdisplay.php?fid=80)
+---- Forum: Çözülmüş İstekler (https://www.csplague.com/forumdisplay.php?fid=87)
+---- Thread: Bayağı Hata Var Düzeltebilecek Buraya :) (/showthread.php?tid=5197)



Bayağı Hata Var Düzeltebilecek Buraya :) - batuopoz0770 - 12-10-12

PHP Code:
/* Eklenti Yapımcısı : Game[R] */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Yeni Plugin"
#define VERSION "1.0"
#define AUTHOR "Game[R]"

new Speed

public plugin_init() {
    
register_plugin("PLUGIN""1.0""Game[R]")
    
register_clcmd("say /speedal","Devam")
    
register_clcmd("admin_speed 1","DevamET"ADMIN_LEVEL_A)
    
register_clcmd("admin_speed 0","DevamETme"ADMIN_LEVEL_A)
    
register_clcmd("admin_speed @all","DevamETmes"ADMIN_LEVEL_A)
    
register_clcmd("admin_speed @T","DevamETmess"ADMIN_LEVEL_A)
    
register_clcmd("admin_speed @CT","DevamETmesss"ADMIN_LEVEL_A)
    
Speed register_cvar("gR_speed","16000")
    
register_logevent("ElBaslayinca",2,"1=Round_Start")
}

public 
Devam(id)
{
    if(
cs_get_user_money(id) < get_pcvar_num(Speed)) {
        
chat_color(id,"!gSpeed !yAlmak Icin Yeterli !tParan YOK! !gGereken Para: !t16000")
        return 
PLUGIN_HANDLED
    
}
    
cs_set_user_money(id,cs_get_user_money(id) - get_pcvar_num(Speed))
    
set_user_maxspeed(id500.0)
    
chat_color(id,"!tBasariyla !gSpeed !tAldin. Dikkat: !gEl Sonu !yBitecek.")
    return 
PLUGIN_HANDLED
}
public 
DevamET(id)
{
    new 
isim[32]
         
get_user_name(id,isim,31)
    
set_user_maxspeed(id500.0)
    
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !yKendine !gSpeed !yAldi Onaylanan: !g( 1 )",isim)
    return 
PLUGIN_HANDLED
}
public 
DevamETme(id)
{
    new 
isim[32]
    
get_user_name(id,isim,31)
    for(new 
all 1;all <= get_maxplayers();all++) {
        
set_user_maxspeed(id250.0)
        
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !yHerkezin !gSpeed'ini Onayladi: !g( 0 )",isim)
        return 
PLUGIN_HANDLED
}
public 
DevamETmes(id)
{
    new 
isim[32]
         
get_user_name(id,isim,31)
    for(new 
all 1;all <= get_maxplayers();all++) {
        
set_user_maxspeed(all500.0)
        
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !gSpeed'ini !yHerkeze Onayladi: !g( 1 )",isim)
        return 
PLUGIN_HANDLED
    
}
}
public 
DevamETmess(id)
{
    new 
isim[32]
    
get_user_name(id,isim,31)
    if(
get_user_team(id) == ||! is_user_alive(id)) {
        
set_user_maxspeed(id500.0)
        
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !gSpeed'ini !yT'lere Onayladi: !g( 1 )",isim)
        return 
PLUGIN_HANDLED
    
}
}
public 
DevamETmesss(id)
{
    new 
isim[32]
    
get_user_name(id,isim,31)    
    if(
get_user_team(id) == ||! is_user_alive(id)) {
        
set_user_maxspeed(id500.0)
        
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !gSpeed'ini !yCT'lere Onayladi: !g( 1 )",isim)
        return 
PLUGIN_HANDLED
    
}
}
public 
ElBaslayinca() {
    for(new 
all 1;all <= get_maxplayers();all++) {
        
set_user_maxspeed(all250.0)
        return 
PLUGIN_HANDLED
    
}
}
    
//----------------------------------- Renkli Yazi --------------------------------//
stock chat_color(const id, const input[], any:...) 
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)
    
    
replace_all(msg190"!g""^4")
    
replace_all(msg190"!y""^1")
    
replace_all(msg190"!t""^3")
    
replace_all(msg190"!team2""^0")
    
    if (
idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++)
        {
            if (
is_user_connected(players[i]))
            {
                
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players)
                
write_byte(players);
                
write_string(msg);
                
message_end();
            }
        }
    }


Amaç
admin_speed 1 yazinca
bunu yazan admin
kendine speed vermiş olucak
admin_speed 0 yazinca
herkezin speed i 0 lanıcak eski haline dönücek
admin_speed @all herkeze speed vericek
admin_speed @T tlere speed vericek
admin_speed @CT ctlere speed vericek
ElBaslangicinda Speedler Kapatılıcak

ayrıca 16000 parayla ise
/speedal
yazarak speed alıncak
Smile

---------- Alttaki Mesaj Zamani 19:00 ---------- Önceki Mesaj Zamani 18:56 ----------

PHP Code:
/* Eklenti Yapımcısı : Game[R] */

#include <amxmodx>
#include <fun>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta>
#include <nvault>
#include <engine>
#include <colorchat>

#define PLUGIN "Yeni Plugin"
#define VERSION "1.0"
#define AUTHOR "Game[R]"

new Speed

public plugin_init() {
    
register_plugin("PLUGIN""1.0""Game[R]")
    
register_clcmd("say /speedal","Devam")
    
register_clcmd("admin_speed 1","DevamET"ADMIN_LEVEL_A)
    
register_clcmd("admin_speed 0","DevamETme"ADMIN_LEVEL_A)
    
register_clcmd("admin_speed @all","DevamETmes"ADMIN_LEVEL_A)
    
register_clcmd("admin_speed @T","DevamETmess"ADMIN_LEVEL_A)
    
register_clcmd("admin_speed @CT","DevamETmesss"ADMIN_LEVEL_A)
    
Speed register_cvar("gR_speed","16000")
    
register_logevent("ElBaslayinca",2,"1=Round_Start")
}

public 
Devam(id)
{
    if(
cs_get_user_money(id) < get_pcvar_num(Speed)) {
        
chat_color(id,"!gSpeed !yAlmak Icin Yeterli !tParan YOK! !gGereken Para: !t16000")
        return 
PLUGIN_HANDLED
    
}
    
cs_set_user_money(id,cs_get_user_money(id) - get_pcvar_num(Speed))
    
set_user_maxspeed(id500.0)
    
chat_color(id,"!tBasariyla !gSpeed !tAldin. Dikkat: !gEl Sonu !yBitecek.")
    return 
PLUGIN_HANDLED
}
public 
DevamET(id)
{
    new 
isim[32]
         
get_user_name(id,isim,31)
    
set_user_maxspeed(id500.0)
    
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !yKendine !gSpeed !yAldi Onaylanan: !g( 1 )",isim)
    return 
PLUGIN_HANDLED
}
public 
DevamETme(id)
{
    new 
isim[32]
    
get_user_name(id,isim,31)
    for(new 
all 1;all <= get_maxplayers();all++) {
        
set_user_maxspeed(id250.0)
        
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !yHerkezin !gSpeed'ini Onayladi: !g( 0 )",isim)
        return 
PLUGIN_HANDLED
}
public 
DevamETmes(id)
{
    new 
isim[32]
         
get_user_name(id,isim,31)
    for(new 
all 1;all <= get_maxplayers();all++) {
        
set_user_maxspeed(all500.0)
        
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !gSpeed'ini !yHerkeze Onayladi: !g( 1 )",isim)
        return 
PLUGIN_HANDLED
    
}
}
public 
DevamETmess(id)
{
    new 
isim[32]
    
get_user_name(id,isim,31)
    if(
get_user_team(id) == ||! is_user_alive(id)) {
        
set_user_maxspeed(id500.0)
        
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !gSpeed'ini !yT'lere Onayladi: !g( 1 )",isim)
        return 
PLUGIN_HANDLED
    
}
}
public 
DevamETmesss(id)
{
    new 
isim[32]
    
get_user_name(id,isim,31)    
    if(
get_user_team(id) == ||! is_user_alive(id)) {
        
set_user_maxspeed(id500.0)
        
chat_color(0,"!t[gR]: !g%s !yNickli !tAdmin !gSpeed'ini !yCT'lere Onayladi: !g( 1 )",isim)
        return 
PLUGIN_HANDLED
    
}
}
public 
ElBaslayinca() {
    for(new 
all 1;all <= get_maxplayers();all++) {
        
set_user_maxspeed(all250.0)
        return 
PLUGIN_HANDLED
    
}
}
    
//----------------------------------- Renkli Yazi --------------------------------//
stock chat_color(const id, const input[], any:...) 
{
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)
    
    
replace_all(msg190"!g""^4")
    
replace_all(msg190"!y""^1")
    
replace_all(msg190"!t""^3")
    
replace_all(msg190"!team2""^0")
    
    if (
idplayers[0] = id; else get_players(playerscount"ch")
    {
        for (new 
0counti++)
        {
            if (
is_user_connected(players))
            {
                
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players)
                
write_byte(players);
                
write_string(msg);
                
message_end();
            }
        }
    }


ilk hatamı buldum hehe :d
includeleri çağırmamışımSmile
[/i][/i][/i][/i][/i][/i]


Cevap: Bayağı Hata Var Düzeltebilecek Buraya :) - akcaliberkk - 12-10-12

Öncelikle; çok gereksiz komutlar yaratmışsın. Bunlara gerek yok. Sadece 1 kere admin_speed komutu ve say /speedal komutu yaratmak yeterli Smile

Public isimlerini Devam devamet gibi saçma şekilde ayarlama. Bunların sana hiçbir faydası yok aksine zararı var. Publicleri birbirine karıştırabilirsin. Hepsine özelliğini anlatan kısa kelimeler bulman gerek. Böylece daha rahat kodlayabilirsin.

Plugininde gereksiz yere include kullanma. "hamsandwich", "nvault", "engine", "fakemeta" modüllerine böyle bir pluginde ihtiyaç yok. Ayrıca zaten "stock" kodu ile chat_color kodunu yaratmışsın. Bunu yaparsan "colorchat" kütüphanesine de gerek kalmaz. Eğer halihazırda bir colorchat kütüphanen varsa ve plugini kendin için yapıyorsan, stock yerıne include "colorchat" kullanman faydalı olacaktır.

Ve sakın ! RoundStart, RoundEnd, DeathMsg, Damage ... gibi eventlere PLUGIN_HANDLED koyma. Ne demiştim Handled return'ü çağrıyı tamamen durdurur. Yani örnek veriyorum bir başka plugininde round başladığında A ayarı kapatılmaya ayarlanmıştır. Eğer sen bu pluginin RoundStart eventinde olay çağrısını durdurursan bundan sonraki tüm pluginlerin de ayarlarını bozmuş olursun !. Ayrıca sakın for döngüsüne return KOYMA. "for" döngüsünde sadece fonksiyon kullan. Adı üstünde handled çağrıyı durduruyor. Hem foru durduruyorsun hem zincirleme bir hataya sebep oluyorsun.

Bu plugini sana en baştan hazırladım. Kontrol et ve pluginlerini bu şekildeki gibi düzenli yap.
admin_speed nick,@T,@CT,@ALL 1/0 // Cvarla ayarlanmış olan speedi açar = 1; 0= kapatır.
say /speedal - > Speed Alir.

Cvar: amx_speed_value 500.0 // Hiz Ayari
Cvar: amx_speed_cost 16000 // Hiz Fiyati

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

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

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

new gSpeed,gFiyat;
public 
plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
gSpeed register_cvar("amx_speed_value","500.0")
    
gFiyat register_cvar("amx_speed_cost","16000")
    
    
register_concmd("admin_speed","cmdSpeed",ADMIN_LEVEL_A,"<nick - @CT/T/All> <1/0>")
    
register_clcmd("say /speedal","saySpeed")
    
    
register_logevent("RoundStart",2,"1=Round_Start")
    
}
public 
RoundStart() {
    for(new 
1<= get_maxplayers(); i++) {
        
set_user_maxspeed(i,250.0)
    }
}
public 
cmdSpeed(id,level,cid) {
    if(!
cmd_access(id,level,cid,2)) {
        return 
PLUGIN_HANDLED
    
}
    
    new 
Arg1[32],Arg2[32];
    
read_argv(1,Arg1,31)
    
read_argv(2,Arg2,31)
    
    new 
Float:Speed;
    new 
Ayar str_to_num(Arg2)
    if(
Ayar >= 1Speed get_pcvar_float(gSpeed);
    else 
Speed 250.0;
    
    new 
players[32],inum,name[65];
    
get_user_name(id,name,64)
    if(
Arg1[0] == '@') {
        if(
equali(Arg1[1],"T"))    {
            
copy(Arg1[1],31,"TERRORIST")
        }
        if(
equali(Arg1[1],"ALL")) {
            
get_players(players,inum)
        }
        else {
            
get_players(players,inum,"e",Arg1[1])
        }
        
        if(
inum == 0) {
            
console_print(id,"Belirtilen Takimda Oyuncu Bulunamadi !")
            return 
PLUGIN_HANDLED
        
}
        for(new 
0;inum;i++) {
            
set_user_maxspeed(players[i],Speed)
            
        }
        switch(
Ayar) {
            case 
0:  ColorChat(0,GREEN,"[gR] ^1ADMIN ^3%s: ^1Set Speed 0 on ^3%s ^1Players !",name,Arg1[1])
            default: 
ColorChat(0,GREEN,"[gR] ^1ADMIN ^3%s: ^1Set Speed 1 on ^3%s ^1Players !",name,Arg1[1])
        }
        
    }
    else {
        new 
Uid;
        
Uid cmd_target(id,Arg1,6)
        if(!
Uid) {
            return 
PLUGIN_HANDLED
        
}
        new 
uname[65];
        
get_user_name(Uid,uname,64)
        
set_user_maxspeed(Uid,Speed)
        switch(
Ayar) {
            case 
0ColorChat(0,GREEN,"[gR] ^1ADMIN ^3%s: ^1Set Speed 0 on player ^3%s",name,uname)
            default: 
ColorChat(0,GREEN,"[gR] ^1ADMIN ^3%s: ^1Set Speed 1 on player ^3%s",name,uname)
        }
        
    }
    return 
PLUGIN_HANDLED
}
public 
saySpeed(id) {
    if(!
is_user_alive(id)) {
        
client_print(id,print_chat,"Olu Oyuncular Speed Alamaz !")
        return 
PLUGIN_HANDLED
    
}
    if(
cs_get_user_money(id) < get_pcvar_num(gFiyat)) {
        
client_print(id,print_chat,"Speed Almak Icin Yeterli Paraniz Bulunmamaktadir ! Gereken: %d",get_pcvar_num(gFiyat))
        return 
PLUGIN_HANDLED
    
}
    
cs_set_user_money(id,cs_get_user_money(id) - get_pcvar_num(gFiyat))
    
set_user_maxspeed(id,get_pcvar_float(gSpeed))
    
ColorChat(id,GREEN,"[gR] ^3Basariyla Speed Aldiniz !")
    return 
PLUGIN_HANDLED


Pluginde öğrenmek istediğin her kodu sorabilirsin, elimden geldiğince açıklarım. Burdaki her fonksiyonu sana açıklarsam sayfalarca yazı olur Smile O yuzden sen bılmedıklerını sorarsın.

Ve plugin yapma çabanı da takdir ediyorum. Eliniz boş gelip plugın istemektense bir şeyler yapmaya çalışıp hatalarınızı sorarsanız çok daha iyi olur. Plugin çalışmalarında başarılar dilerim.


Cevap: Bayağı Hata Var Düzeltebilecek Buraya :) - batuopoz0770 - 13-10-12

teşekkür ederim en iyisi sen ve k4davra
Smile
for



Cevap: Bayağı Hata Var Düzeltebilecek Buraya :) - BrkyDmr - 13-10-12

bu benim istediğim speed plugini Smile sağolun


Cevap: Bayağı Hata Var Düzeltebilecek Buraya :) - batuopoz0770 - 13-10-12

Smile kullan bakalım konu çözümlendi taşınabilir Smile
sonra pluginler bölümünede koyayımda herkez yararlansın Smile


Cevap: Bayağı Hata Var Düzeltebilecek Buraya :) - DeaTReX - 17-10-12

Konu Cözüldüğü İçin Çözülmüş İstekler Bölümüne Taşınmıştır !