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

Wskrzeszanie bez bugow


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

#1 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 04.09.2008 11:08

Ci co mecza sie z wskrzeszaniem martwych graczy, oto pomoc dla was:

#include <amxmodx> 
#include <fakemeta> 
#include <cstrike> 

public respawn_player(id) 
{     
    if (!is_user_connected(id) || is_user_alive(id) || cs_get_user_team(id) == CS_TEAM_SPECTATOR)         return;

    set_pev(id, pev_deadflag, DEAD_RESPAWNABLE)
    dllfunc(DLLFunc_Think, id)

     if (is_user_bot(id) && pev(id, pev_deadflag) == DEAD_RESPAWNABLE)
     {
         dllfunc(DLLFunc_Spawn, id)
     } 
}

Nie zalecane jest uzycie funkji zaraz po smierci (lepiej task np. 5s).
  • +
  • -
  • 0

#2 Seba

    Wszechobecny

  • Zbanowany

Reputacja: 198
Profesjonalista

  • Postów:424
  • Lokalizacja:Internet
Offline

Napisano 05.09.2008 13:28

ja to bym zrobił tak
#include <amxmodx>

#include <hamsandwich>



public getlife(id)

{

	ExecuteHamB(Ham_CS_RoundRespawn, id) 	

}
Prościej i szybciej =]

#3 Miczu

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 05.09.2008 14:48

Ale i tak wiekszosc serwerow kozysta z amxx 1.76d :]
  • +
  • -
  • 0

#4 michal2142

    Początkujący

  • Użytkownik

Reputacja: 1
Nowy

  • Postów:18
Offline

Napisano 03.01.2009 15:32

A gdzie trzeba wstawić funkcję task, bo nie za bardzo skapowałem?
  • +
  • -
  • 1

#5 Miczu

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 03.01.2009 15:41

Jesli chcesz wskrzeszac zaraz po smierci, to w evencie od smierci. Jesli chcesz wskrzeszac gdy np. ktos podejdzie (jakis czas po fakcie) to mozna sobie task darowac.
  • +
  • -
  • 0

#6 Gość__*

  • Gość

Reputacja: 0

Offline

Napisano 21.01.2009 16:39

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <cstrike>

new czas = 54
new pokaz_czas
new restart_title[1][] = {
	"*FreeFrags.pl*"
}

public plugin_init() 
{ 
	register_plugin("ROund STart REstart","1.0","deLL")
	set_task(5.0,"restart_odlicz", 0) 

	return PLUGIN_CONTINUE 
}


public restart_odlicz(){
 	unpause("ac","switchweapon.amxx")

	new configsDir[64]
	get_configsdir(configsDir, 63)
	server_cmd("exec %s/niegra.cfg", configsDir)

	set_task(15.0,"muza_on", 0)
	set_task(54.0,"wywal_noz", 0)
	set_task(55.0,"restart_rundy_1", 0)
	set_task(57.0,"restart_rundy_2", 0) 
	set_task(59.0,"restart_rundy_3", 0) 
	set_task(62.0,"restart_rundy_play", 0) 

	set_task(60.0,"restart_rundy", 0) 
	set_task(1.0,"wyswietl_res",8188,"",0,"b")

}

public muza_on(){
	client_cmd(0,"stopsound")
	client_cmd(0,"spk misc/muza_freefrags")
}

public wywal_noz(){
	pause("ac","switchweapon.amxx")
}

public wyswietl_res(){

	new jac1=random_num(0,255)
	new jac2=random_num(0,255)
	new jac3=random_num(0,255)	
	pokaz_czas = czas

	set_hudmessage(jac1, jac2, jac3, 0.65, 0.75, 2, 0.02, 1.0, 0.01, 0.1, 10)  
	show_hudmessage(0,"==================^n* %s *^nRESTART ZA: %i sec^n==================", restart_title, pokaz_czas) 
	czas--

/*
	message_begin(MSG_ALL, get_user_msgid("ScreenFade"), {0,0,0}, 0)
	write_short( 1<<10 ) // fade lasts this long duration
	write_short( 1<<10 ) // fade lasts this long hold time
	write_short( 1<<12 ) // fade type (in / out)
	write_byte( jac1 ) // fade red
	write_byte( jac2 ) // fade green
	write_byte( jac3 ) // fade blue
	write_byte( 50 ) // fade alpha
	message_end()
*/
}

public restart_rundy_play(){
	set_hudmessage(10, 255, 40, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 4)
	show_hudmessage(0,"=============^n* !! Baw sie dobrze !! *^n=============")
}


public restart_rundy(){
	client_cmd(0,"stopsound")
	client_cmd(0,"spk misc/reset_freefrags")
	server_cmd("sv_restart 1")

}

public restart_rundy_1(){
	remove_task(8188)
	czas = 60
	set_hudmessage(10, 255, 40, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 4)
	show_hudmessage(0,"** ** Trzy ** **")
	client_cmd(0,"stopsound")
	client_cmd(0,"spk misc/three")
}

public restart_rundy_2(){
	set_hudmessage(10, 255, 40, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 4)
	show_hudmessage(0,"** ** Dwa ** **")
	client_cmd(0,"stopsound")
	client_cmd(0,"spk misc/two")

}

public restart_rundy_3(){
	new configsDir[64]
	get_configsdir(configsDir, 63)
	server_cmd("exec %s/gra.cfg", configsDir)
	set_hudmessage(10, 255, 40, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, 4)
	show_hudmessage(0,"** ** Jeden ** **")
	client_cmd(0,"stopsound")
	client_cmd(0,"spk misc/one")
}


public respawn_player(id)
{     
    if (!is_user_connected(id) || is_user_alive(id) || cs_get_user_team(id) == CS_TEAM_SPECTATOR)         return;

    set_pev(id, pev_deadflag, DEAD_RESPAWNABLE)
    dllfunc(DLLFunc_Think, id)

     if (is_user_bot(id) && pev(id, pev_deadflag) == DEAD_RESPAWNABLE)
     {
         dllfunc(DLLFunc_Spawn, id)
     }
}

public plugin_precache() 
{
    precache_sound("misc/muza_freefrags.wav")
    precache_sound("misc/three.wav")
    precache_sound("misc/two.wav")
    precache_sound("misc/one.wav")
    precache_sound("misc/reset_freefrags.wav")

    return PLUGIN_CONTINUE
}

I nie działa

#7 darkman

    Wszechwiedzący

  • Przyjaciel

Reputacja: 87
Zaawansowany

  • Postów:553
  • Lokalizacja:inactive
Offline

Napisano 21.01.2009 16:44

hahaha ^^ jak chcesz, żeby funkcja działała jak jej nie wywołałeś?
  • +
  • -
  • 0

#8 Gość__*

  • Gość

Reputacja: 0

Offline

Napisano 21.01.2009 16:47

hahaha ^^ jak chcesz, żeby funkcja działała jak jej nie wywołałeś?


no to

hahaha ^^ może jaśniej ?

#9 Miczu

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 21.01.2009 17:02

Zamontowales do lampy przelacznik, ale go nie nieuzywasz i dziwisz sie czemu masz ciemno :F
  • +
  • -
  • 0

#10 Gość__*

  • Gość

Reputacja: 0

Offline

Napisano 21.01.2009 17:25

Ciągle nie rozumiem... I to ma być support AMX MOD X ...

#11 Miczu

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 21.01.2009 17:32

Troche trudno wymagac od nas myslenia za ciebie :lol:

Funkcie to sa zestawy polecen ktore w zaleznosci od danych wprowadzonych do nich (czasem nawet ich nie potrzebuja) wykonuja okresloną czynnosc.

Tak jak masz zwykly program matematyczny to jak dasz

sin()

to ci nic nie ruszy, ale jak mu dasz

sin(3.141)

i jeszcze walniesz enterem (wywolasz) to dostaniesz swoj upragniony wynik.

Puki co funkcja respawna sie w twoim plugu marnuje, bo nie jest wywolywana.
  • +
  • -
  • 0

#12 Gość__*

  • Gość

Reputacja: 0

Offline

Napisano 21.01.2009 17:39

Czyli jak ją wywołać ? :help:

#13 darkman

    Wszechwiedzący

  • Przyjaciel

Reputacja: 87
Zaawansowany

  • Postów:553
  • Lokalizacja:inactive
Offline

Napisano 21.01.2009 17:39

przykładowo w evencie deathmessage
public twojafunkcja()
{
    if(restart)
   {
         set_task(2.0, "respawn_player", read_data(2));
   }
}

lub też w kodzie

respawn_player(idgracza)

  • +
  • -
  • 0

#14 wizu

    Godlike

  • Przyjaciel

Reputacja: 224
Profesjonalista

  • Postów:1 217
  • GG:
  • Lokalizacja:Sanok
Offline

Napisano 21.01.2009 17:41

Jeśli dalej tego nie rozumiesz, to daj sobie spokój z pisaniem pluginów i zacznij swoją przygodę z programowaniem od jakiegoś standardowego języka ;)

A co do suppportu, to naprawdę nie mamy nic w zamian za pomoc jaką Wam udzielamy. Pomagamy jak potrafimy, jednak wszystkiego za kogoś zrobić nie możemy.
  • +
  • -
  • 0

#15 Gość__*

  • Gość

Reputacja: 0

Offline

Napisano 21.01.2009 17:41

Dobra, i tak tego nie zrozumie, mógłby ktoś to zrobić ?

#16 wizu

    Godlike

  • Przyjaciel

Reputacja: 224
Profesjonalista

  • Postów:1 217
  • GG:
  • Lokalizacja:Sanok
Offline

Napisano 21.01.2009 17:44

Załóż swój temat i opisz problem w odpowiednim dziale.
  • +
  • -
  • 0

#17 Gość_Maestro_*

  • Gość

Reputacja: 0

Offline

Napisano 17.07.2010 17:48

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <cstrike>
#include <fun>
#include <fakemeta>


#define PLUGIN "Ozywianie graczy"
#define VERSION "1.0"
#define AUTHOR "Kanter Strajk"


public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /ozyw", "pokaz_menu", ADMIN_KICK);
register_clcmd("say_team /ozyw", "pokaz_menu", ADMIN_KICK);
}
public pokaz_menu(id)
{
if(is_user_connected(id) && get_user_flags(id) & ADMIN_KICK)
{
new players[32], plnum;
get_players(players, plnum, "bch");
new key[40], info[8], team[16], name[32];
new menu = menu_create("Wybierz gracza do ozywienia", "menu_click")
for(new i = 0; i < plnum; i++)
{
new id=players[i]
if(cs_get_user_team(id) == CS_TEAM_T)
{
get_user_name(players[i], name, 31);
formatex(info, 7, "%d", id);
team="TT";
formatex(key, 31, "\w%s\y\R%s", name, team);
menu_additem(menu, key, info);
}
else if(cs_get_user_team(id) == CS_TEAM_CT)
{
get_user_name(players[i], name, 31);
formatex(info, 7, "%d", id);
team="CT";
formatex(key, 31, "\w%s\y\R%s", name, team);
menu_additem(menu, key, info);
}
}
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_display(id, menu);
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
public menu_click(id, menu, item)
{
new access, info[8], name[32], callback;
menu_item_getinfo(menu, item, access, info, 7, name, 31, callback);
menu_destroy(menu);
new kogo = str_to_num(info);
if(item != MENU_EXIT && item != MENU_BACK && item != MENU_MORE)
{
if(is_user_connected(kogo) && !is_user_alive(kogo))
{
set_pev(kogo, pev_deadflag, DEAD_RESPAWNABLE);
dllfunc(DLLFunc_Think, kogo);
dllfunc(DLLFunc_Spawn, kogo);
strip_user_weapons(kogo);
give_item(kogo, "weapon_knife");
}
pokaz_menu(id);
}
}

Moj plugin na ozywianie gracza na respie bez bugow, i z przyjaznym menu.
( Odpracowywuje warna )

#18 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 17.07.2010 21:26

to moze zamiast odkopywac stare tematy wrzucil bys to do dzialu pluginy :?:

17 lipiec 2010 - 22:28:
pozatym

if(is_user_connected(kogo) && !is_user_alive(kogo))
                {
                set_pev(kogo, pev_deadflag, DEAD_RESPAWNABLE);
                dllfunc(DLLFunc_Think, kogo);
                dllfunc(DLLFunc_Spawn, kogo);
                strip_user_weapons(kogo);
                give_item(kogo, "weapon_knife");
                }
lepiej zamienic na
ExecuteHamB(Ham_CS_RoundRespawn, kogo)

  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#19 Wojtek Piasecki

    Nowy

  • Użytkownik

Reputacja: 6
Nowy

  • Postów:9
  • Imię:Wojtek
  • Lokalizacja:Łódź
Offline

Napisano 14.11.2010 16:17

Sory za odkop ale... Jak ma wyglądać plugin który wskrzesi każdego kto umrze(czyt. mini dejtmecz)?
  • +
  • -
  • 0

Od 2006 niezmiennie dla graczy, REKSIO FFA
Reksio FFA - 193.33.177.14:27051
by Serwery CS


#20 wheypro

    Pomocny

  • Zbanowany

Reputacja: -25
Masakra

  • Postów:74
  • Lokalizacja:Zakaz podawania adresów stron w polu "Lokalizacja" itp.
Offline

Napisano 30.01.2013 09:33

Ja się dopiero uczę pluginy wojtek pisać ale wydaje mi się że to by musiało być coś takiego:

#include <amxmodx>
#include <cstrike>
#include <fakemeta>

public plugin_init(){
register_plugin("Dodatkowe 200 dolarow za zabojstwo", "0.1", "benio101");

register_event("DeathMsg", "DeathMsg", "a");
}

public DeathMsg(){

new victim=read_data(2);
set_task(2.0, "wskrzes", victim)

}
public wskrzes(victim){
if(is_user_connected(victim) && !is_user_alive(victim)){
dllfunc(DLLFunc_Spawn, victim)
}
}


Piszę z biblioteki uniwersyteckiej więc nie powiem Ci czy działa, ale powinno.
sebul (30.01.2013 11:01):
Kody umieszczaj w tagach bbcode.





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

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