←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Pytanie na początku każdej rundy

Zablokowany

  • +
  • -
Złotówka - zdjęcie Złotówka 11.09.2010

Witam,

Chciałbym się dowiedzieć jak zrobić takie coś, że:
Przy każdej nowej rundzie, wyskakuje "Menu"
Chcesz dodatkowe HP?
1. Tak
2. Nie

Jeśli gracz wybierze Tak to
Dostaje 200HP + Napis na czacie ( To umiem zrobić więc nie musicie pisać )

A jeśli wybierze Nie to nie dostaje nic i jest napis.

Bardziej mi chodzi o funkcje, żeby takie menu wyskakiwało podczas każdej rundy i jedna z funkcji dawała dodatek a druga nie.

I żeby pod koniec każdej rundy resetowało HP do standardu, czyli do 100 HP.

Dam +
Użytkownik Znak Zapytania? edytował ten post 11.09.2010 17:29
Odpowiedz

  • +
  • -
Kusek - zdjęcie Kusek 11.09.2010


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

public plugin_init() {
register_logevent("menu", 2, "1=Round_Start")
}
public menu(id)
{
if(cs_get_user_team(id) == CS_TEAM_CT || cs_get_user_team(id) == CS_TEAM_T)
{
new menu = menu_create("\yChcesz dodatkowe HP","wybor_menu")

menu_additem(menu,"\wTak","0",0)
menu_additem(menu,"\wNie","1",0)
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_setprop(menu,MPROP_EXITNAME,"Wyjscie")
menu_display(id,menu,0)
}
}
public wybor_menu(id,menu,item)
{

if(item==MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

new data[6], iName[64]
new access, callback

menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);

new key = str_to_num(data)

switch(key)
{
case 0: {
set_user_health(id,200)
client_print(id, print_chat, "To umiem zrobic wiec nie musicie pisac ");

}
case 1: {
client_print(id, print_chat, "Nie to nie, lazki bez");
}
}
return PLUGIN_HANDLED
}


Zaraz dam edit'a
Użytkownik Frajer edytował ten post 11.09.2010 17:47
Odpowiedz

  • +
  • -
Złotówka - zdjęcie Złotówka 11.09.2010

A jeśli chce, żeby pod 1. Tak był kod z public Moja_Funkcja()

Daje w case po prostu
Moja_Funkca() ?

Będzie się resetowało po rundzie, czy nie jak tak zrobie?
Odpowiedz

  • +
  • -
Kusek - zdjęcie Kusek 11.09.2010

tak dajesz Twoja_Funkcja(id)
Odpowiedz

  • +
  • -
Vertricus - zdjęcie Vertricus 11.09.2010

dla logevent id = 0 czyli błąd :}
Trza pętlę od 1-32 i sprawdzic czy is_user_alive bądź get_players
Odpowiedz

  • +
  • -
Złotówka - zdjęcie Złotówka 11.09.2010

Wrzuciłem na Serwer, Twoją wersje (Kilka postów wyżej) zmieniam mapę, a menu się nie wyświetla, Restart Round - to samo menu nie ma

Kompiluje się bez żadnych błędów.
Odpowiedz

  • +
  • -
Kusek - zdjęcie Kusek 11.09.2010

czyli tutaj dać trzeba
if(cs_get_user_team(id) == CS_TEAM_CT || cs_get_user_team(id) == CS_TEAM_T)

to

if(!is_user_alive(id))



jaką pętle?

dla logevent id = 0 czyli błąd :}

to ma być tam 2 czy 0 xD bo nie zrozumiałem twej wypowiedzi
Odpowiedz

hardbot - zdjęcie hardbot 11.09.2010

cvar: amx_ile_dac_hp "200" //Standard 200 :)

Spoiler

Użytkownik hardbot edytował ten post 11.09.2010 18:31
Odpowiedz

  • +
  • -
Kusek - zdjęcie Kusek 11.09.2010

tylko hard, on chce dodać swoją funkcje
spróbuj dać tak


#include <amxmodx>
#include <hamsandwich>
#include <cstrike>

public plugin_init() {
register_plugin("StartMenu","1.2","[H]ARDBO[T]&Frajer");

RegisterHam(Ham_Spawn, "player", "menu", 1);
}
public menu(id)
{
if(!is_user_alive(id))
{
new menu = menu_create("\yChcesz dodatkowe HP","wybor_menu")

menu_additem(menu,"\wTak","0",0)
menu_additem(menu,"\wNie","1",0)
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_setprop(menu,MPROP_EXITNAME,"Wyjscie")
menu_display(id,menu,0)
}
}
public wybor_menu(id,menu,item)
{

if(item==MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

new data[6], iName[64]
new access, callback

menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);

new key = str_to_num(data)

switch(key)
{
case 0: {
Twoja_Funkcja(id)
}
case 1: {
Twoja2_Funkcja(id)
}
}
return PLUGIN_HANDLED
}


P.S. Hard, dlaczego ty używasz starego menu?
Użytkownik Frajer edytował ten post 11.09.2010 18:36
Odpowiedz

  • +
  • -
Złotówka - zdjęcie Złotówka 11.09.2010

hardbot, Twoje też się nie wyświetla ;/

11 wrzesień 2010 - 19:37:
Error: Undefined symbol "RegisterHam" on line 8

Frajer nie działa kompilacja xD
Odpowiedz

  • +
  • -
Kusek - zdjęcie Kusek 11.09.2010

mi tam nie wali errorami, weź teraz bo wcześniej nie było includa hansandwich
Odpowiedz

  • +
  • -
Złotówka - zdjęcie Złotówka 11.09.2010

@ Poradziłem sobie z Errorem, ale menu i tak się nie wyświetla.
Odpowiedz

  • +
  • -
G[o]Q - zdjęcie G[o]Q 11.09.2010

if(!is_user_alive(player))

hardbot sprawdzasz czy gracz jest martwy i jesli tak to mu pokazujesz menu usuncie sobie "!" i po krzyku
Odpowiedz

hardbot - zdjęcie hardbot 11.09.2010

Spoiler
Odpowiedz
Zablokowany