←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] Problem z 2 linijkami sklepu


Najlepsza odpowiedź Klakier 15.01.2014 21:22

Ogarnij to:

Spoiler
Przejdź do postu
Zablokowany

.K3K - zdjęcie .K3K 15.01.2014

Witam, uczę się pisać plugin'y i jakoś mi to nie wychodzi. czy mógłby mi ktoś poprawić te oto błędy w moim sklepie 

 

 

a oto błędy

x.sma(18) : error 029: invalid expression, assumed zero
x.sma(18 -- 19) : error 008: must be a constant expression; assumed zero
x.sma(69) : error 017: undefined symbol "set_user_multijump"
x.sma(69) : warning 215: expression has no effect
x.sma(69) : error 001: expected token: ";", but found "]"
x.sma(69) : error 029: invalid expression, assumed zero
x.sma(69) : fatal error 107: too many error messages on one line 

te numerki to linie

18. };
19.
20. public plugin_init() {


69. set_user_multijump[id] = true
Odpowiedz

CsBoost - zdjęcie CsBoost 15.01.2014

Aby ktoś mógł poprawić te błędy, musi mieć cały kod .sma pluginu.

Powyższy wycinek to za mało.

Odpowiedz

.K3K - zdjęcie .K3K 15.01.2014

jest to sklep za fragi prośił bym o naprawienie multijumpów oraz aby był na komendę /shopfragi

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <ColorChat>

#define PLUGIN "Sklep za Fragi"
#define VERSION "1.0"
#define AUTHOR "Karol33k"

new 	name[64],
	prefix[] = "[NazwaForum.pl]";

new const g_Commands[][] = {
	"say /shopfrag",
	"say /shopfragi",
	"say_team /shopfrag",
	"say_team /shopfragi",
};

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	for(new i ; i < sizeof g_Commands ; i ++)
		register_clcmd(g_Commands[i], "cmdSklep");
}
public cmdSklep(id)
{
	new menu,formats[64];
	formatex(formats,charsmax(formats),"\ySklep Fragow^n\wPosiadasz %d Fragow",get_user_frags(id))
	menu = menu_create(formats,"handle_cmdSklep");
	if(get_user_team(id) == 2)
	{		
		menu_additem(menu,"\wGranat Flash \y[3fragi]","0")
		menu_additem(menu,"\wGranat Smoke \y[4fragi]","1")
		menu_additem(menu,"\wDodatkowy Skok \y[6fragow]","2")		
	}
	else if(get_user_team(id) == 1)
	{
		menu_additem(menu,"\wGranat Flash \y[3fragi]","0")
		menu_additem(menu,"\wGranat Smoke \y[4fragow]","1")
		menu_additem(menu,"\wDodatkowy Skok \y[6fragow]","2")
	}
	menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
	menu_setprop(menu,MPROP_EXITNAME,"Wyjscie")
	menu_setprop(menu,MPROP_NEXTNAME,"Dalej")
	menu_setprop(menu,MPROP_BACKNAME,"Wroc")
	menu_display(id,menu,0)
}
public handle_cmdSklep(id, menu, item)
{
	get_user_name(id,name,charsmax(name));
	switch(item)
	{
		case 0:
		{
			if(!gb_BuyItem(id,2,2)) return PLUGIN_HANDLED;
			give_item(id, "weapon_Flashbang");
			ColorChat(id, GREY, "%s %s ^x01 kupiles wlasnie ^x03 Granat Flash!", prefix,name);
		}
		case 1:
		{
			if(!gb_BuyItem(id,2,2)) return PLUGIN_HANDLED;
			ColorChat(id, GREY, "%s %s ^x01 kupiles Granat Smoke!", prefix,name);
			give_item(id, "weapon_smokegrenade");
		}
		case 2:
		{
			if(!gb_BuyItem(id,10,2)) return PLUGIN_HANDLED;
			ColorChat(id, GREY, "%s %s ^x01 kupiles MultiJump",prefix, name);
			set_user_multijump[id] = true
		}
		
		case 3:
		{
			if(!gb_BuyItem(id,2,1)) return PLUGIN_HANDLED;
			give_item(id, "weapon_Flashbang");
			ColorChat(id, GREY, "%s %s ^x01 kupiles wlasnie ^x03 Granat Flash!", prefix,name);
		}
		case 4:
		{
			if(!gb_BuyItem(id,8,1)) return PLUGIN_HANDLED;
			ColorChat(id, GREY, "%s %s ^x01 kupiles Granat Smoke!", prefix,name);
			give_item(id, "weapon_smokegrenade");
		}
		case 5:
		{
			if(!gb_BuyItem(id,10,1)) return PLUGIN_HANDLED;
			ColorChat(id, GREY, "%s %s ^x01 kupiles MultiJump",prefix, name);
			set_user_multijump[id] = true
		}
	}
	return PLUGIN_CONTINUE;
}
public gb_BuyItem(id,frags,team){
	get_user_name(id, name, 31);
	if(!is_user_alive(id)){
		ColorChat(id, GREY, "%s %s nie zyjesz jak chcesz kupywac?!", prefix,name);
		return false;
	}
	if(get_user_frags(id) < frags)
	{
		ColorChat(id, GREY, "%s %s nie zyjesz jak chcesz kupywac?!", prefix,name);
		return false;
	}
	if(get_user_team(id) != team)
	{
		ColorChat(id, GREY, "%s %s ta opcja jest dostepna nie dla twojego zespolu!", prefix,name);
		return false;
	}
	if (get_user_frags(id) >= frags){
		set_user_frags(id, get_user_frags(id) - frags);
		return true;
	}
	return PLUGIN_CONTINUE;
}


Użytkownik resx edytował ten post 15.01.2014 17:42
Odpowiedz

  • +
  • -
Wielkie Jol - zdjęcie Wielkie Jol 15.01.2014

#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <ColorChat>

#define PLUGIN "Sklep za Fragi"
#define VERSION "1.0"
#define AUTHOR "Karol33k"

new     name[64],
    prefix[] = "[NazwaForum.pl]";

new set_user_multijump[33];
new const g_Commands[][] = {
    "say /shopfrag",
    "say /shopfragi",
    "say_team /shopfrag",
    "say_team /shopfragi"
}

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    for(new i ; i < sizeof g_Commands ; i ++)
        register_clcmd(g_Commands[i], "cmdSklep");
}
public cmdSklep(id)
{
    new menu,formats[64];
    formatex(formats,charsmax(formats),"\ySklep Fragow^n\wPosiadasz %d Fragow",get_user_frags(id))
    menu = menu_create(formats,"handle_cmdSklep");
    if(get_user_team(id) == 2)
    {        
        menu_additem(menu,"\wGranat Flash \y[3fragi]","0")
        menu_additem(menu,"\wGranat Smoke \y[4fragi]","1")
        menu_additem(menu,"\wDodatkowy Skok \y[6fragow]","2")        
    }
    else if(get_user_team(id) == 1)
    {
        menu_additem(menu,"\wGranat Flash \y[3fragi]","0")
        menu_additem(menu,"\wGranat Smoke \y[4fragow]","1")
        menu_additem(menu,"\wDodatkowy Skok \y[6fragow]","2")
    }
    menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
    menu_setprop(menu,MPROP_EXITNAME,"Wyjscie")
    menu_setprop(menu,MPROP_NEXTNAME,"Dalej")
    menu_setprop(menu,MPROP_BACKNAME,"Wroc")
    menu_display(id,menu,0)
}
public handle_cmdSklep(id, menu, item)
{
    get_user_name(id,name,charsmax(name));
    switch(item)
    {
        case 0:
        {
            if(!gb_BuyItem(id,2,2)) return PLUGIN_HANDLED;
            give_item(id, "weapon_Flashbang");
            ColorChat(id, GREY, "%s %s ^x01 kupiles wlasnie ^x03 Granat Flash!", prefix,name);
        }
        case 1:
        {
            if(!gb_BuyItem(id,2,2)) return PLUGIN_HANDLED;
            ColorChat(id, GREY, "%s %s ^x01 kupiles Granat Smoke!", prefix,name);
            give_item(id, "weapon_smokegrenade");
        }
        case 2:
        {
            if(!gb_BuyItem(id,10,2)) return PLUGIN_HANDLED;
            ColorChat(id, GREY, "%s %s ^x01 kupiles MultiJump",prefix, name);
            set_user_multijump[id] = true
        }
        
        case 3:
        {
            if(!gb_BuyItem(id,2,1)) return PLUGIN_HANDLED;
            give_item(id, "weapon_Flashbang");
            ColorChat(id, GREY, "%s %s ^x01 kupiles wlasnie ^x03 Granat Flash!", prefix,name);
        }
        case 4:
        {
            if(!gb_BuyItem(id,8,1)) return PLUGIN_HANDLED;
            ColorChat(id, GREY, "%s %s ^x01 kupiles Granat Smoke!", prefix,name);
            give_item(id, "weapon_smokegrenade");
        }
        case 5:
        {
            if(!gb_BuyItem(id,10,1)) return PLUGIN_HANDLED;
            ColorChat(id, GREY, "%s %s ^x01 kupiles MultiJump",prefix, name);
            set_user_multijump[id] = true
        }
    }
    return PLUGIN_CONTINUE;
}
public gb_BuyItem(id,frags,team){
    get_user_name(id, name, 31);
    if(!is_user_alive(id)){
        ColorChat(id, GREY, "%s %s nie zyjesz jak chcesz kupywac?!", prefix,name);
        return false;
    }
    if(get_user_frags(id) < frags)
    {
        ColorChat(id, GREY, "%s %s nie zyjesz jak chcesz kupywac?!", prefix,name);
        return false;
    }
    if(get_user_team(id) != team)
    {
        ColorChat(id, GREY, "%s %s ta opcja jest dostepna nie dla twojego zespolu!", prefix,name);
        return false;
    }
    if (get_user_frags(id) >= frags){
        set_user_frags(id, get_user_frags(id) - frags);
        return true;
    }
    return PLUGIN_CONTINUE;
}
Odpowiedz

.K3K - zdjęcie .K3K 15.01.2014

Dobra plugin gra ale jest w nim inny problem tt w ogóle nie może nic kupić a ct może kupić tylko smoke dałbyś radę to przerobić jeszcze? naprawdę będę bardzo wdzięczny i poleci ++ :D

 

 

aha wiem, że jest to problem z tym np. id,8,1 ; id,10,2 itd nie zbyt to ogarniam :S

 

przy próbie kupna multijump jest komunikat, że nie żyję więc nie mogę kupować a u tt jak chcę coś kupić to wyskakuje, że to nie dla mojego teamu


Użytkownik resx edytował ten post 15.01.2014 19:25
Odpowiedz

  • +
  • -
Wielkie Jol - zdjęcie Wielkie Jol 15.01.2014

Spróbuj usunąć warunki sprawdzania drużyny do menu_additem, nie jest to potrzebne, skoro i tak dla wszystkich są te same bonusy do wykupienia.

Odpowiedz

  • +
  • -
Najlepsza odpowiedź Klakier - zdjęcie Klakier 15.01.2014

Ogarnij to:

Spoiler
Odpowiedz

Gość_21977_* 22.01.2014

Automatyczna wiadomość


Ten temat został przeniesiony z forum

AMX Mod XProblemy

do

Scripting AMXXProblemy
Odpowiedz
Zablokowany