Problem przy kompilacji
Mestru
12.10.2010
Podczas gdy kompiluje plugin pojawiaja się następujące błędy:
Nie rozumiem w czym problem a próbowałem już chyba wszystkiego...
Oto plik sma:
Proszę o pomoc!
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team Premium_Shop.sma(21) : warning 217: loose indentation Premium_Shop.sma(23) : warning 217: loose indentation Premium_Shop.sma(31) : warning 217: loose indentation Premium_Shop.sma(80) : error 001: expected token: ",", but found "-string-" Premium_Shop.sma(80) : warning 215: expression has no effect Premium_Shop.sma(80) : error 001: expected token: ";", but found ")" Premium_Shop.sma(80) : error 029: invalid expression, assumed zero Premium_Shop.sma(80) : fatal error 107: too many error messages on one line Compilation aborted. 4 Errors.
Nie rozumiem w czym problem a próbowałem już chyba wszystkiego...
Oto plik sma:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <amxmisc>
#include <nvault>
#include <ColorChat>
#include <fakemeta>
#define PLUGIN "Premium Shop"
#define VERSION "1.0 BETA"
#define AUTHOR "Mestru"
new g_Vault,pp_kill,pp_hs,PlayerPP[33];
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_cvar("pp_kill", "2")
register_cvar("pp_hs","3")
pp_kill=get_cvar_num("pp_kill")
pp_hs=get_cvar_num("pp_hs")
register_event("DeathMsg", "eDeath", "a");
register_clcmd("say /sklep", "menu")
}
public eDeath()
{
new attacker = read_data( 1 );
new ofiara = read_data( 2 );
new headshot = read_data( 3 );
if(ofiara != attacker && attacker != 0)
{
if(get_user_team(attacker) != get_user_team(ofiara))
{
PlayerPP[attacker] += pp_kill;
if(headshot)
{
PlayerPP[attacker] += pp_hs;
ColorChat(attacker,GREEN,"[PremiumShop]: Dostales ^x04%d^x01 PremiumPunktow za zabicie wroga oraz bonus^x04 %d^x01 PremiumPunktow za headshot'a !",pp_kill,pp_hs);
}
else
{
ColorChat(attacker,GREEN,"[PremiumShop]^x01: Dostales ^x04%d^x01 PremiumPunktow za zabicie wroga",pp_kill);
}
}
}
}
public menu(id)
{
//Premium Itemy maja flage "o"
new menu = menu_create("\rLista przedmiotow:", "wybieranie")
menu_additem(menu, "\wDeagle (20PP)", "1", 0)
menu_additem(menu, "\wUMP45 (35PP)", "2", 0)
menu_additem(menu, "\wM3 (Premium Item - 100PP)", "3", ADMIN_LEVEL_C)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
}
public wybieranie(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64]
new acces, callback
menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)
new key = str_to_num(data)
new pp = PlayerPP[id]
switch(key)
{
case 1:
{
if(pp < 20)
{
client_print(id, print_chat "Masz za malo PP, aby kupic Deagle")
menu_destroy(menu)
return PLUGIN_HANDLED
}
else
{
client_print(id, print_chat "Kupiles Deagle")
give_item(id, "weapon_deagle");
pp=pp-20
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
case 2:
{
if(pp < 35)
{
client_print(id, print_chat "Masz za malo PP, aby kupic UMP45")
menu_destroy(menu)
return PLUGIN_HANDLED
}
else
{
client_print(id, print_chat "Kupiles UMP45")
give_item(id, "weapon_deagle");
pp=pp-35
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
case 3:
{
if(pp < 100)
{
client_print(id, print_chat "Masz za malo PP, aby kupic M3")
menu_destroy(menu)
return PLUGIN_HANDLED
}
else
{
client_print(id, print_chat "Kupiles M3")
give_item(id, "weapon_m3");
pp=pp-100
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
}
}
client_print(id, print_chat, "Wybrales pierwszy przycisk z menu")
public client_connect(id)
LoadPP(id);
public client_disconnect(id)
SavePP(id);
public SavePP(id) {
new namepp[32];
get_user_name(id, namepp, 31);
new vaultkey[64], vaultdata[256];
format(vaultkey, 63, "%s-ppshop", namepp);
format(vaultdata, 255, "%i#", PlayerPP[id]);
nvault_set(g_Vault, vaultkey, vaultdata);
return PLUGIN_CONTINUE;
}
public LoadPP(id) {
new namepp[32];
get_user_name(id,namepp,31);
new vaultkey[64], vaultdata[256];
format(vaultkey, 63, "%s-ppshop", namepp);
format(vaultdata, 255, "%i#", PlayerPP[id]);
nvault_get(g_Vault, vaultkey, vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new playerPP[33];
parse(vaultdata, playerPP, 31);
PlayerPP[id] = str_to_num(playerPP);
return PLUGIN_CONTINUE;
}
Proszę o pomoc!
Załączone pliki
Savander
12.10.2010
Na amxx nie znam się bardzo dobrze, ale tu jest błąd
Powinno być
Są jeszcze dwa inne, to spróbuję pokombinować
Użytkownik Savander edytował ten post 12.10.2010 19:00
pp_kill=get_cvar_num("pp_kill")
pp_hs=get_cvar_num("pp_hs")
Powinno być
pp_kill = get_cvar_num("pp_kill")
pp_hs = get_cvar_num("pp_hs")
Są jeszcze dwa inne, to spróbuję pokombinować
Użytkownik Savander edytował ten post 12.10.2010 19:00
mgr inż. Pavulon
13.10.2010
client_print(id, print_chat "Masz za malo PP, aby kupic UMP45")przecinek za print_chat sam się nie wstawi... (i tak X razy)
Prawda i fałsz. Brak spacji nie jest błędem.Na amxx nie znam się bardzo dobrze, ale tu jest błąd