Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
İlk Plugin ve Hatalar
#3
Öncelikle indentation hatalarını gidermelisin. Bunlar yanlış yerde TAB veya süslü parantez kullanımından kaynaklanır. Bu düzeltilmiş hali, karşılaştırarak nerelerde hata yaptığını görebilirsin.
PHP Code:
/* Plugin generated by AMXX-Studio */ 

#include <amxmodx> 
#include <amxmisc>

#define PLUGIN "BuyHP" 
#define VERSION "1.0" 
#define AUTHOR "Pikachu" 

new gPara

public 
plugin_init() { 
    
register_plugin("BuyHP","1.0","Pikachu"
    
    
gPara register_cvar("buyhp_ucret","5000"
    
    
register_clcmd("say /buyhp","Buy_HP"
    


public 
Buy_HP(id) { 
    
    if(
cs_get_user_money(id) < get_pcvar_num(gUcret)) { 
        
client_print(id,print_chat,"Yeterli Paran Yok!",get_pcvar_num(gPara)) 
        return 
PLUGIN_HANDLED 
    

    
    
cs_set_user_money(id,cs_get_user_money(id) - get_pcvar_num(gPara)) 
    
    
set_user_health(id,200
    return 
PLUGIN_HANDLED 


İkinci olarak "cs_get_user_money" fonksiyonu "cstrike" modülüne ait bir fonksiyondur. Bu yüzden eklentide öncelikle "cstrike" içerir şeklinde belirtmelisin ki compiler o dosyayı da okusun.

#include <cstrike>

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

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

#define PLUGIN "BuyHP" 
#define VERSION "1.0" 
#define AUTHOR "Pikachu" 

new gPara

public 
plugin_init() { 
    
register_plugin("BuyHP","1.0","Pikachu"
    
    
gPara register_cvar("buyhp_ucret","5000"
    
    
register_clcmd("say /buyhp","Buy_HP"
    


public 
Buy_HP(id) { 
    
    if(
cs_get_user_money(id) < get_pcvar_num(gUcret)) { 
        
client_print(id,print_chat,"Yeterli Paran Yok!",get_pcvar_num(gPara)) 
        return 
PLUGIN_HANDLED 
    

    
    
cs_set_user_money(id,cs_get_user_money(id) - get_pcvar_num(gPara)) 
    
    
set_user_health(id,200
    return 
PLUGIN_HANDLED 


Şuanki hatalar:
Error: Undefined symbol "gUcret" on line 24
Error: Undefined symbol "set_user_health" on line 31

İlkinde diyor ki: 24. satırdaki gUcret tanınmıyor. Hemen bakalım nasıl tanımıyormuş ?

Pluginin başında oluşturduğun değişken gPara

new gPara

iken sen karıştırıp gUcret yazmışsın Smile

İkincisinde diyor ki: set_user_health tanınmıyor.
Çünkü set_user_health fonksiyonu "fun" kütüphanesinin bir fonksiyonudur. Yani yine cstrike'ı belirtirken yaptığın gibi fun'u da belitrmelisin

#include <fun>

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

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

#define PLUGIN "BuyHP" 
#define VERSION "1.0" 
#define AUTHOR "Pikachu" 

new gPara

public 
plugin_init() { 
    
register_plugin("BuyHP","1.0","Pikachu"
    
    
gPara register_cvar("buyhp_ucret","5000"
    
    
register_clcmd("say /buyhp","Buy_HP"
    


public 
Buy_HP(id) { 
    
    if(
cs_get_user_money(id) < get_pcvar_num(gPara)) { 
        
client_print(id,print_chat,"Yeterli Paran Yok!",get_pcvar_num(gPara)) 
        return 
PLUGIN_HANDLED 
    

    
    
cs_set_user_money(id,cs_get_user_money(id) - get_pcvar_num(gPara)) 
    
    
set_user_health(id,200
    return 
PLUGIN_HANDLED 


Ve sonuç:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team

Header size: 368 bytes
Code size: 612 bytes
Data size: 296 bytes
Stack/heap size: 16384 bytes; estimated max. usage=779 cells (3116 bytes)
Total requirements: 17660 bytes
Done.

Bunlar dışında bazı yerlerde mantıksal hata var. Yani compiler'in göremediği ama amaçlanan olayı sağlamayan yerler var.

Satır 26:
PHP Code:
client_print(id,print_chat,"Yeterli Paran Yok!",get_pcvar_num(gPara)) 

Virgülden sonra ücretin saklandığı cvar ayarından bilgi çıkarmak istemişsin. Bunu kullanmanın bir amacı olabilir, o da kişiye parasının yetmediğinin yanında, ne kadar parası olması gerektiğini belirtmek. Bunun için de gerekli belirtmeyi yapmamışsın.
Doğrusu:

PHP Code:
client_print(id,print_chat,"Yeterli Paran Yok! Gereken Para = %d",get_pcvar_num(gPara)) 

----

Satır 32:
PHP Code:
    set_user_health(id,200

Sanırım burada kişiye 200 hp verilmesini amaçlıyorsun. Çok emin değilim ama buyhp yani hp satın alma olarak düşünülmüş bir eklentide kişiye para karşılığı hp eklenir. Senin yaptığın, kişinin hp'sini 200'e ayarlamak. Dolayısıyla kişinin hp si örneğin 300 ise, hp satın almak istediğinde hp'si 200 e düşecektir. Bu da iyi bir durum olmaz.
200 HP eklemek için yapılması gereken:

PHP Code:
set_user_health(id,  get_user_health(id) + 200


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


Messages In This Thread
İlk Plugin ve Hatalar - by Pikachu - 17-05-13, 23:33
Cevap: İlk Plugin ve Hatalar - by akcaliberkk - 18-05-13, 00:39
Cevap: İlk Plugin ve Hatalar - by Pikachu - 18-05-13, 00:44
Cevap: İlk Plugin ve Hatalar - by JDM - 18-05-13, 01:00
Cevap: İlk Plugin ve Hatalar - by Pikachu - 18-05-13, 01:19
Cevap: İlk Plugin ve Hatalar - by Pikachu - 18-05-13, 01:36

Possibly Related Threads…
Thread Author Replies Views Last Post
  Oyunyonetıcısı plugın kursatyzc 9 11,462 03-09-17, 18:05
Last Post: tahayasin
  [İSTEK] CT MAVi - T Kırmızı ışık yanan Plugin + Video Çektim ademcan36 9 10,464 26-04-17, 16:15
Last Post: h4m4s
  Parlak pelerin plugin lazım artiz42 8 4,692 03-08-16, 20:45
Last Post: murat1366
  Plugin İstek CFG Tarzı erenstrkl 6 3,772 03-08-16, 20:31
Last Post: murat1366
  Plugin Ufak Ayarlar Config Setting 7 3,490 03-08-16, 20:28
Last Post: murat1366
  Nicke özel plugin bykeremm 12 6,215 03-08-16, 20:18
Last Post: murat1366
  Jailbreak Bahis Plugin hasan06500 49 13,153 03-08-16, 20:18
Last Post: murat1366
  Reklamcılara karsi Acil İstek[Plugin] hasan0650 22 5,571 17-07-16, 18:03
Last Post: BYHAZARD7
  Hoş Geldin Mesajı (Değişik Bir Plugin + Resim Koydum + AMXX Ve SMA) Nobb 13 9,031 18-04-16, 02:59
Last Post: Uzman34666
  Takım ve meslek plugin berkanmtn 9 5,376 09-06-15, 10:10
Last Post: sertanAbi123

Foruma Atla:


Users browsing this thread: 1 Guest(s)