←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] Funkcja nie zwraca wartości,...

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 07.10.2011

Mam taki błąd przy kompilacji
jbextreme.sma(2433) : warning 209: function "specialday_submenu" should return a value



Linia 2433 to
}



public specialday_submenu(id, specialdaymenu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(specialdaymenu);
return PLUGIN_HANDLED;
}

new Data[7], Name[64];
new Access, Callback;
menu_item_getinfo(specialdaymenu, item, Access, Data,5, Name, 63, Callback);

new Key = str_to_num(Data);

for(new i = 0; i < g_MaxClients; i++)
switch (Key)
{

case 1:
{
client_cmd(id,"fd")
return PLUGIN_HANDLED
}

case 2:
{
if(IsPlayer(i) && is_user_alive(i))
{
switch(cs_get_user_team(i))
{
case CS_TEAM_T:
{
set_user_health(i, 150)

give_item(i, "weapon_ak47")
give_item(i, "weapon_m4a1")

cs_set_user_bpammo(i, CSW_AK47, 90)
cs_set_user_bpammo(i, CSW_M4A1, 90)
}

case CS_TEAM_CT:
{
if(is_user_alive(id))
{
set_user_health(i, 3000)
can_have_gun[i] = false
}
}
}
}

client_cmd(0, "mp3 play ^"%s^"", zombiesound)
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Dzien zombie")
}

case 3:
{
server_cmd("mp_friendlyfire 1")
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Kill Day,^x01 ostatnia osoba ma zyczenie")
}

case 4:
{
if(IsPlayer(i) && is_user_alive(id))
{
switch(cs_get_user_team(i))
{
case CS_TEAM_T:
{
give_item(i, "weapon_shield")
give_item(i, "weapon_deagle")

cs_set_user_bpammo(i, CSW_DEAGLE, 35)
}

case CS_TEAM_CT:
{
give_item(i, "weapon_deagle")
give_item(i, "weapon_m4a1")

cs_set_user_bpammo(i, CSW_DEAGLE, 35)
cs_set_user_bpammo(i, CSW_M4A1, 90)
}
}
}
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Dzien spartan")
}

}
}
Odpowiedz

  • +
  • -
Goliath - zdjęcie Goliath 07.10.2011

public specialday_submenu(id, specialdaymenu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(specialdaymenu);
return PLUGIN_HANDLED;
}

new Data[7], Name[64];
new Access, Callback;
menu_item_getinfo(specialdaymenu, item, Access, Data,5, Name, 63, Callback);

new Key = str_to_num(Data);

for(new i = 0; i < g_MaxClients; i++)
{
switch (Key)
{

case 1:
{
client_cmd(id,"fd")
return PLUGIN_HANDLED
}

case 2:
{
if(IsPlayer(i) && is_user_alive(i))
{
switch(cs_get_user_team(i))
{
case CS_TEAM_T:
{
set_user_health(i, 150)

give_item(i, "weapon_ak47")
give_item(i, "weapon_m4a1")

cs_set_user_bpammo(i, CSW_AK47, 90)
cs_set_user_bpammo(i, CSW_M4A1, 90)
}

case CS_TEAM_CT:
{
if(is_user_alive(id))
{
set_user_health(i, 3000)
can_have_gun[i] = false
}
}
}
}

client_cmd(0, "mp3 play ^"%s^"", zombiesound)
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Dzien zombie")
}

case 3:
{
server_cmd("mp_friendlyfire 1")
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Kill Day,^x01 ostatnia osoba ma zyczenie")
}

case 4:
{
if(IsPlayer(i) && is_user_alive(id))
{
switch(cs_get_user_team(i))
{
case CS_TEAM_T:
{
give_item(i, "weapon_shield")
give_item(i, "weapon_deagle")

cs_set_user_bpammo(i, CSW_DEAGLE, 35)
}

case CS_TEAM_CT:
{
give_item(i, "weapon_deagle")
give_item(i, "weapon_m4a1")

cs_set_user_bpammo(i, CSW_DEAGLE, 35)
cs_set_user_bpammo(i, CSW_M4A1, 90)
}
}
}
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Dzien spartan")
}

}
}

return PLUGIN_HANDLED;
}

To nie jest błąd, tylko ostrzeżenie.
Odpowiedz

  • +
  • -
speedkill - zdjęcie speedkill 07.10.2011

Jak masz taki błąd musisz dodać przed ostatnią klamrą
return PLUGIN_HANDLED;
Lub
return PLUGIN_CONTINUE
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 07.10.2011

Ok, dzięki, Goliath mam do Ciebie pytanie, jak zrobiles, że ten kod jest tak jakby po tabulatorze ? bo ja mam tak:

sadsad
asdsad
asdsad

a chce tak

asd
asdada
asdasdsa

Użytkownik LucKy_skiLL edytował ten post 07.10.2011 18:22
Odpowiedz

  • +
  • -
Goliath - zdjęcie Goliath 07.10.2011

Pawn Studio -> Extras -> Indent Code :&
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 08.10.2011

Wszystko fajnie, ale zasypało mnie errorami

L 10/07/2011 - 19:35:13: Function "specialday_check" was not found
L 10/07/2011 - 19:35:13: [AMXX] Displaying debug trace (plugin "jbextreme.amxx")
L 10/07/2011 - 19:35:13: [AMXX] Run time error 19: function not found
L 10/07/2011 - 19:35:13: [AMXX]	[0] jbextreme.sma::plugin_init (line 249)
L 10/07/2011 - 19:35:17: Invalid CVAR pointer
L 10/07/2011 - 19:35:17: [AMXX] Displaying debug trace (plugin "jbextreme.amxx")
L 10/07/2011 - 19:35:17: [AMXX] Run time error 10: native error (native "get_pcvar_float")
L 10/07/2011 - 19:35:17: [AMXX]	[0] jbextreme.sma::round_start (line 983)
L 10/07/2011 - 19:35:19: Invalid CVAR pointer
L 10/07/2011 - 19:35:19: [AMXX] Displaying debug trace (plugin "jbextreme.amxx")
L 10/07/2011 - 19:35:19: [AMXX] Run time error 10: native error (native "get_pcvar_num")
L 10/07/2011 - 19:35:19: [AMXX]	[0] jbextreme.sma::team_select (line 1233)
L 10/07/2011 - 19:35:34: Invalid CVAR pointer
L 10/07/2011 - 19:35:34: [AMXX] Displaying debug trace (plugin "jbextreme.amxx")
L 10/07/2011 - 19:35:34: [AMXX] Run time error 10: native error (native "get_pcvar_num")
L 10/07/2011 - 19:35:34: [AMXX]	[0] jbextreme.sma::hud_status (line 1387)

Odświeżam
Użytkownik LucKy_skiLL edytował ten post 08.10.2011 13:53
Odpowiedz

  • +
  • -
stepdub - zdjęcie stepdub 08.10.2011

podaj cały plugin, będzie łatwiej :]
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 08.10.2011

Został ostatni błąd do naprawienia

L 10/08/2011 - 15:37:04: [CSTRIKE] Invalid player 2
L 10/08/2011 - 15:37:04: [AMXX] Displaying debug trace (plugin "jbextreme.amxx")
L 10/08/2011 - 15:37:04: [AMXX] Run time error 10: native error (native "cs_get_user_team")
L 10/08/2011 - 15:37:04: [AMXX]	[0] jbextreme.sma::specialday_submenu (line 2465)


Spoiler
Odpowiedz

  • +
  • -
speedkill - zdjęcie speedkill 08.10.2011

Daj całe sma bo nie wiem która to linia ;)
Odpowiedz

  • +
  • -
Goliath - zdjęcie Goliath 08.10.2011

public specialday_menu(id)
{
new specialdaymenu = menu_create("\y Specjalne dni", "specialday_submenu")

menu_additem(specialdaymenu, "\wWolny dzien", "1", 0);
menu_additem(specialdaymenu, "\wDzien zombie", "2", 0);
menu_additem(specialdaymenu, "\wKill Day", "3", 0);
menu_additem(specialdaymenu, "\wDzien Sparta", "4", 0)

menu_setprop(specialdaymenu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, specialdaymenu, 0);
}

public specialday_submenu(id, specialdaymenu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(specialdaymenu);
return PLUGIN_HANDLED;
}

new Data[7], Name[64];
new Access, Callback;
menu_item_getinfo(specialdaymenu, item, Access, Data,5, Name, 63, Callback);

new Key = str_to_num(Data);

for(new i = 1; i <= g_MaxClients; i++)
{
if(!is_user_alive(i))
continue;

switch (Key)
{

case 1:
{
client_cmd(id,"fd")
return PLUGIN_HANDLED
}

case 2:
{
if(IsPlayer(i) && is_user_alive(i))
{
switch(cs_get_user_team(i))
{
case CS_TEAM_T:
{
set_user_health(i, 150)

give_item(i, "weapon_m4a1")

cs_set_user_bpammo(i, CSW_M4A1, 200)
}

case CS_TEAM_CT:
{
if(is_user_alive(id))
{
set_user_health(i, 3000)
engclient_cmd(id,"weapon_knife");
}
}
}
}

client_cmd(0, "mp3 play ^"%s^"", zombiesound)
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Dzien zombie")
jail_open()
}

case 3:
{
if(IsPlayer(i) && is_user_alive(i))
{
switch(cs_get_user_team(i))
{
case CS_TEAM_T:
{
give_item(i, "weapon_ak47")

cs_set_user_bpammo(i, CSW_AK47, 200)
}

case CS_TEAM_CT:
{
if(is_user_alive(id))
{
set_user_health(i, 5000)
give_item(i, "weapon_m4a1")

cs_set_user_bpammo(i, CSW_M4A1, 200)
}
}
}
}
set_cvar_num("mp_tkpunish", 0)
set_cvar_num("mp_friendlyfire", 1)
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Kill Day,^x01 ostatnia osoba ma zyczenie")
jail_open()
}

case 4:
{
if(IsPlayer(i) && is_user_alive(id))
{
switch(cs_get_user_team(i))
{
case CS_TEAM_T:
{
give_item(i, "weapon_shield")
give_item(i, "weapon_deagle")

cs_set_user_bpammo(i, CSW_DEAGLE, 35)
}

case CS_TEAM_CT:
{
give_item(i, "weapon_deagle")
give_item(i, "weapon_m4a1")

cs_set_user_bpammo(i, CSW_DEAGLE, 35)
cs_set_user_bpammo(i, CSW_M4A1, 200)
}
}
}
ColorChat(0, GREEN, "[JailBreak]^x01 Dzisiaj jest^x03 Dzien spartan")
}

}
}
jail_open()
return PLUGIN_HANDLED;
}

Zobacz, czy działa.
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 08.10.2011

Dzięki działa, tak od razu zeby nie robic nowego tematu, dodałem muzyke gdy się wybierze np. Dzien z Zombie to krzyk zombie, dodałem tak:

new const gszMusic[]="jbextreme/zombie_day.mp3"


potem w

public plugin_precache()


precache_sound(gszMusic)


i odtwarzanie muzyki

client_cmd(0, "mp3 play ^"%s^"", gszMusic)


Lecz nie działa, nie wiem czemu, chyba wszystko dobrze zrobiłem.
Użytkownik LucKy_skiLL edytował ten post 08.10.2011 17:34
Odpowiedz

  • +
  • -
speedkill - zdjęcie speedkill 08.10.2011

konwertuj mp3 do wav i sprawdź
zmień z mp3 ścieżki na wav :)
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 08.10.2011

Ale ja nie chce wav ;]
Odpowiedz

  • +
  • -
Goliath - zdjęcie Goliath 08.10.2011

Używając "mp3 play" musisz podać ścieżkę do pliku włączając w to folder sound, czyli:
"sound/jbextreme/zombie_day.mp3"

(Nie jestem tylko pewien czy trzeba wtedy podać rozszerzenie pliku czy nie...)
Odpowiedz

  • +
  • -
stepdub - zdjęcie stepdub 08.10.2011

Goliath, nie trzeba, spróbuj bez "
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 08.10.2011

Dałem tak

precache_sound("sound/jbextreme/zombie_day.mp3")



i


client_cmd(0, "mp3 play sound/jbextreme/zombie_day.mp3")




I tez nie działa
Użytkownik LucKy_skiLL edytował ten post 08.10.2011 19:45
Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 08.10.2011

Powinno być
precache_generic("sound/jbextreme/zombie_day.mp3")

i
client_cmd(0, "mp3 play sound/jbextreme/zombie_day")
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 08.10.2011

W konsoli serwera jest

Warning:  Unable to open sound/sound/jbextreme/zombie_day.mp3 for transfer


To sound mam usunąc z precache_generic czy z client_cmd ?
Odpowiedz

  • +
  • -
stepdub - zdjęcie stepdub 08.10.2011

client_cmd(0, "mp3 play sound/jbextreme/zombie_day")
tak wpisałeś? bo na pewno nie, skoro Ci wyskoczył warn...
Odpowiedz

  • +
  • -
LucKy_skiLL - zdjęcie LucKy_skiLL 08.10.2011

Mam tak -.-
Odpowiedz