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

Losowanie BossaNie działa


  • Zamknięty Temat jest zamknięty
13 odpowiedzi w tym temacie

#1 arek_snk

    Zaawansowany

  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:104
  • Lokalizacja:CS
Offline

Napisano 05.06.2010 17:53

Otóż mam taki problem, losowanie bosa nie działa;/ i nie wiem ocb, tzn działa, ale nie zmienia mu grawitacji xD
podaje niżej kod SMA
public event_newround()
{
new players[32], name[33], num, i
get_players(players, num , "ae", "CT")

if(num > 1)
{
g_boss = players[random_num(0, num-1)]

get_user_name(g_boss, name, 32)

for(i = 0; i < num; i++)
{
set_user_gravity(g_boss, 0.3);
client_print(players[i], print_chat, "%s zostal bossem", name)
}
}
}


w Plugin_Ini()

register_event("HLTV", "event_newround", "a", "1=0", "2=0")



Ale nie zmienia.

rep+ za pomoc pozdro.
  • +
  • -
  • 0

#2 AmD

    aemde

  • Użytkownik

Reputacja: 71
Pomocny

  • Postów:500
  • Steam:steam
  • Imię:Dariusz
  • Lokalizacja:Częstochowa
Offline

Napisano 05.06.2010 20:51

sprawdź sobie tak:


get_user_gravity(g_boss, +0.260);
(nie wiem jaką chcesz grawitację)
  • +
  • -
  • 0

#3 arek_snk

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:104
  • Lokalizacja:CS
Offline

Napisano 06.06.2010 11:57

nie działa.

refresh
  • +
  • -
  • 0

#4 Harsay

    Harsayus pospolitus

  • Użytkownik

Reputacja: 88
Zaawansowany

  • Postów:274
  • Imię:Michał
  • Lokalizacja:Bydgoszcz
Offline

Napisano 06.06.2010 12:05

public losowanie() {
	
	new ilu_losowac = 1  
	
	new players[32], num, jest
	new bool: wylosowany[33]
	get_players(players, num) 
	
	if(num >= ilu_losowac)
	{
		
		while(jest<ilu_losowac){                        
			new id = players[random_num(0, num)]
			if(is_user_connected(id) && is_user_alive(id)){
				wylosowany[id] = true;
				jest++;
			}
		}
		
		for(new id=0; id<num; id++){
			new i = players[id];
			
			if(wylosowany[i]){
				
				set_user_gravity(i, 0.30)
				client_print(id, print_chat, "[BOSS] Jestes bossem!")
				
				} else {
				
				client_print(id, print_chat, "[BOSS] Boss zostal wylosowany!")				
			}
			
		}
		
	} 		
}

Ten kod na pewno zadziała ponieważ zastosowałem go w moim modzie.

Pamiętaj o module <fun>
  • +
  • -
  • 0

#5 arek_snk

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:104
  • Lokalizacja:CS
Offline

Napisano 06.06.2010 18:17

NIe działa poprawnie, w pierwszej rundzie dodaje HP jednemu graczowi a w następnej wszystkim :(

help:?:(

POMOCY?!
  • +
  • -
  • 0

#6 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 06.06.2010 18:33

a dalbys caly kod :?: bo tutaj nie ma nic o hp
  • +
  • -
  • 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

#7 arek_snk

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:104
  • Lokalizacja:CS
Offline

Napisano 07.06.2010 12:11

Spróbowałem inny
public losowaniepolicjanta(id)
{
set_user_health(id, 1300)
set_user_armor(id, 100)
DajGrenade(id)
return PLUGIN_HANDLED;
}

public wybierzpolicjantabosa() {
static players[32],num,id
get_players(players, num, "ae")
id = random_num(1,num)

{
set_task(3.0, "losowaniepolicjanta", id)
}
return PLUGIN_HANDLED;
}|

ale ten też działa tak samo jak ten wyżej

07 czerwiec 2010 - 13:11:
refresh
  • +
  • -
  • 0

#8 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

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

Napisano 07.06.2010 16:23

jak dobrze kojarzę grawitacja jest resetowana do 1.0 przy spawnie, ten Event HLTV 0 0 jest wywoływany przed spawnem graczy
  • +
  • -
  • 0

#9 arek_snk

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:104
  • Lokalizacja:CS
Offline

Napisano 07.06.2010 20:03

Spoko, a jak wywołać go po spawnie ?:P, acha, jak możesz to R3X napisz Działającego, bo ten co podałem wyżej to losuje 2 osoby :/ czasem jedną zależy jak mu się chce :(.., też losuje jak ktoś Wejdzie na serwer nawet gdy jest już wylosowany boss :/
  • +
  • -
  • 0

#10 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

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

Napisano 08.06.2010 09:33

#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>

#define PLUGIN "Randomize Bonus"
#define VERSION "1.0"
#define AUTHOR "R3X"

new giRandomPlayer;


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

register_event("HLTV", "eventRoundInit", "a", "1=0", "2=0");
RegisterHam(Ham_Spawn, "player", "fwSpawn", 1);
}
public eventRoundInit(){
new iPlayers[32], num;
get_players(iPlayers, num, "a");

new i = random_num(0, num-1);
giRandomPlayer = iPlayers[i];

new szName[32];
get_user_name(giRandomPlayer, szName, 31);
client_print(0, print_chat, " * W tej rundzie Bossem jest %s", szName);
}
public fwSpawn(id){
if(id == giRandomPlayer){
//Tu bonusy
set_pev(id, pev_gravity, 0.3);
set_pev(id, pev_health, pev(id, pev_health)+50.0);
}
}

  • +
  • -
  • 0

#11 arek_snk

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:104
  • Lokalizacja:CS
Offline

Napisano 08.06.2010 16:53

dziękował, a jakie flagi mam wstawić jak chce aby to w CT losowało tylko? albo w Terro ?:D
  • +
  • -
  • 0

#12 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 11.06.2010 11:16

reksiu, tu nie potrzebny jest hamsandwich :D

wystarczy event o początku rundy

w plugin_init()
register_logevent("Poczatek_Rundy", 2, "1=Round_Start");


public Poczatek_Rundy(){
// kod
}



Czyli to by było mniej więcej tak:

#include <amxmodx>
#include <fakemeta>


public plugin_init() {
register_plugin("Randomize Bonus","0.2", "grankee")
register_logevent("Poczatek_Rundy", 2, "1=Round_Start");
}
public Poczatek_Rundy(){
new iPlayers[32], num;
get_players(iPlayers, num, "a");

new i = random_num(0, num-1);
new RandomPlayer = iPlayers[i];

new szName[32];
get_user_name(RandomPlayer, szName, 31);
client_print(0, print_chat, " * W tej rundzie Bossem jest %s", szName);
set_pev(RandomPlayer, pev_gravity, 0.3);
set_pev(RandomPlayer, pev_health, pev(RandomPlayer, pev_health)+50.0);
return PLUGIN_CONTINUE
}

Użytkownik grankee edytował ten post 11.06.2010 11:23

  • +
  • -
  • 0

#13 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

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

Napisano 11.06.2010 17:55

Przy ożywianiu raczej to kiepsko zadziała :rolleyes:
  • +
  • -
  • 0

#14 grankee

    Godlike

  • Support Team

Reputacja: 517
Wszechwiedzący

  • Postów:1 500
  • Lokalizacja:Radom
Offline

Napisano 11.06.2010 18:06

To jest event w momencie, jak skończy się freezetime :P
  • +
  • -
  • 0




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

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