Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Komenda ma dzialac tylko 5minkomendy


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
9 odpowiedzi w tym temacie

#1 M@nkovsky

    Zaawansowany

  • Zbanowany

Reputacja: 57
Pomocny

  • Postów:110
  • GG:
  • Steam:steam
  • Imię:Mariusz
  • Lokalizacja:Poland
Offline

Napisano 14.09.2011 15:23

Witam , mam takie pytanie . Czy da rade zrobić ,żeby np. Komenda /XXX (nie wazne co pod nia jest) Dzialała tylko przez 5min kazdej mapy?

Z góry dziękuję za pomoc oczywiście ++

#2 A może sma?

    Godlike

  • Power User

Reputacja: 546
Wszechwiedzący

  • Postów:1 464
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 14.09.2011 17:37

nowa zmienna
new bool:block = false

w
public plugin_init 

set_task(300.0, "Block")

Gdzieś w kodzie:
public Block()
block = true;

W funkcji, która odpowiada za komendę na początku -
if(block)
return PLUGIN_CONITINUE

Użytkownik A może sma? edytował ten post 14.09.2011 17:38

  • +
  • -
  • 1

#3 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 14.09.2011 19:05

jeśli nie chcesz komunikatu "Opcja została właśnie zablokowana" to zamiast taska lepiej jest użyć systime()

#include <amxmodx>
#include <amxmisc>
 
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR ""
 
new giCmdExpire;
 
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	giCmdExpire = get_systime() + 5 * 60;
	register_clcmd("komenda_na_5_minut", "cmdNa5Minut");
}
 
public cmdNa5Minut(id)
{
	if(get_systime() > giCmdExpire)
	{
		client_print(id, print_chat, "Za pozno <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/tongue.png' class='bbc_emoticon' alt=':P' />");
		return PLUGIN_HANDLED;
	}
}

  • +
  • -
  • 1

#4 A może sma?

    Godlike

  • Power User

Reputacja: 546
Wszechwiedzący

  • Postów:1 464
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 14.09.2011 19:42

jeśli nie chcesz komunikatu

A ja w swoim kodzie wyświetlałem wiadomość?
  • +
  • -
  • 0

#5 Skull3D

    Wszechmogący

  • Zbanowany

Reputacja: 102
Zaawansowany

  • Postów:651
  • Imię:Andrzej
  • Lokalizacja:AMXX.PL
Offline

Napisano 14.09.2011 19:46

A może sma:


No tak pomylka

A tak wogóle kisiel masz 1 i za duzo

Użytkownik Skull3D edytował ten post 15.09.2011 13:56


#6 stepdub

    Profesjonalista

  • Użytkownik

Reputacja: 43
Pomocny

  • Postów:207
  • Lokalizacja:Kobyłka
Offline

Napisano 14.09.2011 19:58

Skull3D, nie
Block = true jeżeli minie 5 minut, kiedy mija w funkcji komendy jest zwracany PLUGIN_CONTINUE ^^
  • +
  • -
  • 0

#7 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 14.09.2011 20:09

@ A może sma?
nie miałeś, tylko ta metoda nie umożliwia dodania takiego komunikatu
  • +
  • -
  • 0

#8 M@nkovsky

    Zaawansowany

  • Autor tematu
  • Zbanowany

Reputacja: 57
Pomocny

  • Postów:110
  • GG:
  • Steam:steam
  • Imię:Mariusz
  • Lokalizacja:Poland
Offline

Napisano 15.09.2011 05:41

public cmdNa5Minut(id)
{
if(get_systime() < giCmdExpire)
Moja komenda bblabla
else if(get_systime() > giCmdExpire)
{
client_print(id, print_chat, "Za pozno :P");
return PLUGIN_HANDLED;
}
}



To będzie działało?

#9 Droso

    Dawniej HubertTM

  • Support Team

Reputacja: 1 291
Godlike

  • Postów:2 371
  • Steam:steam
  • Imię:Hubert
  • Lokalizacja:Wrocław
Offline

Napisano 15.09.2011 13:42

Tak nie potrzebnie jeszcze dajesz else if wystarczy sam else
  • +
  • -
  • 0

Piszę pluginy pod: AMX MOD X oraz SOURCE MOD!

Na zlecenie i bez zlecenia zresztą też!


#10 M@nkovsky

    Zaawansowany

  • Autor tematu
  • Zbanowany

Reputacja: 57
Pomocny

  • Postów:110
  • GG:
  • Steam:steam
  • Imię:Mariusz
  • Lokalizacja:Poland
Offline

Napisano 16.09.2011 14:58

public bank(id)
{
if(get_systime() < giCmdExpire)
{
if (player_item_id[id]>0)
{
player_b_bank[id]=player_item_id[id]
player_b_bankdurability[id]=item_durability[id]
ColorChat(id, GREEN,"^x01 Wlozyles item -^x04 %s ^x01 do banku", player_item_name[id])
dropitem(id)
}
else
{
if(player_b_bank[id]>0)
{
award_item(id,player_b_bank[id])
item_durability[id]=player_b_bankdurability[id]-20
player_b_bank[id]=0
player_b_bankdurability[id]=0
if(item_durability[id]<=0) dropitem(id)
else ColorChat(id, GREEN,"^x01 Wybrales item -^x04 %s ^x01 z banku", player_item_name[id])
}
else
ColorChat(id, GREEN,"^x01 Jeszcze nic nie wlozyles do banku", player_item_name[id])

}
}
else (get_systime() > giCmdExpire)
{
client_print(id, print_chat, "Za pozno :P");
return PLUGIN_HANDLED;
}

}



co zle zrobilem?

DIABLOMOD.sma(14356 -- 14357) : error 028: invalid subscript (not an array or too many subscripts): "get_systime"

DIABLOMOD.sma(14362) : error 054: unmatched closing brace




Rozgryzlem to , do zamkniecia dziekuje

Użytkownik M@nkovsky edytował ten post 16.09.2011 15:10





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych