←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Użycie x razy

Locked

  • +
  • -
Scotty's Photo Scotty 29.08.2011

Witam, mam takie pytanko jak ustawić w pluginie żeby coś mogło zostać użyte x razy, powiedzmy że mamy taki lajtowy plug


/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Krzychu"

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /hpp", "DAJ_HP")
register_concmd("dajhp", "DAJ_HP")
}
public DAJ_HP(id){

if(cs_get_user_money(id) <1000){
client_print(id, print_chat, "[HP]Nie masz kasy")
return PLUGIN_HANDLED
}
if(get_user_health(id) >=100){
client_print(id, print_chat, "[HP]Nie potrzeba Ci dodatkowego HP")
return PLUGIN_HANDLED
}

if(!is_user_alive(id)){
client_print(id, print_chat, "[HP]Po co Ci jak nie żyjesz ?!")
return PLUGIN_HANDLED
}


if(cs_get_user_money(id) >=1000)
set_user_health(id, get_user_health(id)+150)
client_print(id, print_chat, "[HP]Dostales 150 HP")
cs_set_user_money(id, cs_get_user_money(id) - 1000,0)
return PLUGIN_HANDLED
}


no i chce żeby np. możliwość takiego uleczenia wynosiła np. 2x na rude.

Pozdrawiam
Quote

  • +
  • -
Waq's Photo Waq 29.08.2011

chyba nic nie pomylilem
w taki sposób zrobiłem od razu cvar'a amx_hp "1" - ile razy możemy użyć

/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
 
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Krzychu"
new uzyl
new uzyl2[33]
 
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /hpp", "DAJ_HP")
register_concmd("dajhp", "DAJ_HP")
uzyl= register_cvar("amx_hp", "3")
 
register_event  ("HLTV", "eventRoundInit", "a", "1=0", "2=0");
}
public client_putinserver(id){
for(new i = 1; i<33; i++){
  uzyl2[i] = 0;
}
}
public eventRoundInit(){
for(new i = 1; i<33; i++){
  uzyl2[i] = 0;
}
}
public DAJ_HP(id){
if(uzyl2[id]==get_pcvar_num(uzyl)){
  client_print(id, print_chat, "[HP]Wykorzystales juz mozliwosc kupienia HP!");
  return PLUGIN_HANDLED
}
uzyl2[id]++
 
if(cs_get_user_money(id) <1000){
  client_print(id, print_chat, "[HP]Nie masz kasy")
  return PLUGIN_HANDLED
}
if(get_user_health(id) >=100){
  client_print(id, print_chat, "[HP]Nie potrzeba Ci dodatkowego HP")
  return PLUGIN_HANDLED
}
 
if(!is_user_alive(id)){
  client_print(id, print_chat, "[HP]Po co Ci jak nie żyjesz ?!")
  return PLUGIN_HANDLED
}
 
 
if(cs_get_user_money(id) >=1000)
  set_user_health(id, get_user_health(id)+150)
client_print(id, print_chat, "[HP]Dostales 150 HP")
cs_set_user_money(id, cs_get_user_money(id) - 1000,0)
return PLUGIN_HANDLED
 
}

Edited by Waq, 29.08.2011 15:13.
Quote

Skull3D's Photo Skull3D 29.08.2011

Robisz nową zmienną
new Kupil[33];

Gdy już coś kupi robisz tak
Kupil[id] = true;

Ma to wyglądać tak:

if(cs_get_user_money(id) >=1000)  set_user_health(id, get_user_health(id)+150)client_print(id, print_chat, "[HP]Dostales 150 HP")cs_set_user_money(id, cs_get_user_money(id) - 1000,0)Kupil[id] = true;return PLUGIN_HANDLED
 

Potem w nowej rundzie dajesz

Kupil[id] = false;

I w nowej rundzie możesz użyc ponownie lub możesz nie dawać w nowej rundzie tyko dać set taska

set_task(60.0, "uzycie", id);

 
public uzycie(id)
Uzyl[id] = false;

I po 1 minucie możesz znowu użyć kupienia.

Potem zrob taka funkcje:

if(Kupil){

 
return 1;
}

Mam nadzieje że się nauczysz
Edited by Skull3D, 29.08.2011 15:20.
Quote

  • +
  • -
Scotty's Photo Scotty 29.08.2011

no właśnie chodziło mi też o to żeby ktoś objaśnił co i jak, dzięki Posted Image
Edited by Krzychu92, 29.08.2011 16:28.
Quote

  • +
  • -
Hiroshima's Photo Hiroshima 29.08.2011

Automatyczna wiadomość


Ten temat został przeniesiony z forum:
AMX Mod XPytania
do
Scripting AMXXPytania

Quote

  • +
  • -
Scotty's Photo Scotty 29.08.2011

Jeszcze prosiłbym Waq opisanie tego tak jak to zrobił Skull3D byłbym bardzo wdzięczny.
Quote
Locked