@Up, źle.
#include <amxmodx>
#include <amxmisc>
#include <colorchat>
#include <hamsandwich>
#include <cstrike>
#define PLUGIN "FreeOrDeath"
#define VERSION "1.0"
#define AUTHOR "SAL"
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Spawn, "player", "respawn", 1)
}
public respawn(id)
{
if(is_user_alive(id))
{
set_task(3.0,"menu_pokaz",id)
}
}
public menu_pokaz(id)
{
if(cs_get_user_team(id) == CS_TEAM_T)
{
new menu = menu_create("Wybierz mod:", "wybieranie")
menu_additem(menu, "FreeRun", "1", 0)
menu_additem(menu, "DeathRun", "2", 0)
menu_setprop(menu, MPROP_EXITNAME, "Wyjscie")
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)
switch(key)
{
case 1:{
client_cmd(id, "say /free")
ColorChat(0, GREY, "Gramy mod >>FreeRun<<")
client_print(id, print_center, "Idz na koniec i czekaj az ktos skonczy")
menu_destroy(menu)
}
case 2:{
ColorChat(0, RED, "Gramy normalny >>DeathRun<<")
client_print(id, print_center, "Szykuj sie na HeadShot!")
menu_destroy(menu)
}
}
menu_destroy(menu)
return PLUGIN_CONTINUE;
}
Źle, bo niszczysz menu dwa razy.
#include <amxmodx>
#include <amxmisc>
#include <colorchat>
#include <hamsandwich>
#include <cstrike>
#define PLUGIN "FreeOrDeath"
#define VERSION "1.0"
#define AUTHOR "SAL"
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Spawn, "player", "respawn", 1)
}
public respawn(id)
{
if(is_user_alive(id))
{
set_task(3.0,"menu_pokaz",id)
}
}
public menu_pokaz(id)
{
if(cs_get_user_team(id) == CS_TEAM_T)
{
static menu
if(!menu) {
menu = menu_create("Wybierz mod:", "wybieranie")
menu_additem(menu, "FreeRun")
menu_additem(menu, "DeathRun")
menu_setprop(menu, MPROP_EXITNAME, "Wyjscie")
}
menu_display(id, menu)
}
}
public wybieranie(id, menu, item)
{
if (item == MENU_EXIT)
{
return PLUGIN_HANDLED;
}
switch(item)
{
case 0:{
client_cmd(id, "say /free")
ColorChat(0, GREY, "Gramy mod >>FreeRun<<")
client_print(id, print_center, "Idz na koniec i czekaj az ktos skonczy")
}
case 1:{
ColorChat(0, RED, "Gramy normalny >>DeathRun<<")
client_print(id, print_center, "Szykuj sie na HeadShot!")
}
}
return PLUGIN_CONTINUE;
}
Jeszcze bardziej poprawiona wersja, bo mi tu ktoś pisze, że ***** się znam...
#include <amxmodx>
#include <colorchat>
#define PLUGIN "Free"
#define VERSION "0.1"
#define AUTHOR "Sebul"
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
register_logevent("RoundStart", 2, "1=Round_Start");
}
public RoundStart()
set_task(3.0, "RoundStart2");
public RoundStart2() {
for(new id=1; id<=32; id++) {
if(is_user_alive(id) && get_user_team(id) == 1)
menu_pokaz(id);
}
}
public menu_pokaz(id) {
static menu;
if(!menu) {
menu = menu_create("Wybierz mod:", "wybieranie");
menu_additem(menu, "FreeRun");
menu_additem(menu, "DeathRun");
menu_setprop(menu, MPROP_EXITNAME, "Wyjscie");
}
menu_display(id, menu);
}
public wybieranie(id, menu, item) {
if(item == MENU_EXIT) {
return PLUGIN_HANDLED;
}
switch(item) {
case 0: {
client_cmd(id, "say /free");
ColorChat(0, GREY, "Gramy mod >>FreeRun<<");
client_print(id, print_center, "Idz na koniec i czekaj az ktos skonczy");
}
case 1: {
ColorChat(0, RED, "Gramy normalny >>DeathRun<<");
client_print(id, print_center, "Szykuj sie na HeadShot!");
}
}
return PLUGIN_CONTINUE;
}