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
 

MrCma - zdjęcie

MrCma

Rejestracja: 30.12.2010
Aktualnie: Nieaktywny
Poza forum Ostatnio: 07.07.2012 17:06
-----

#242297 Dawanie hp

Napisane przez speedkill w 27.04.2011 06:41

o takie coś chodziło ?
/* Plugin generated by AMXX-Studio */

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

#define PLUGIN "za ap hp"
#define VERSION "1.0"
#define AUTHOR "speedkill"


public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_clcmd("say /kuphp", "hp")
}
public hp(id){
if(cs_get_user_team(id) == CS_TEAM_T)
{
zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) - 10)
set_user_health(id,1000)
}
}

  • +
  • -
  • 1


#205861 Blokada teamu

Napisane przez krysteksulek w 14.01.2011 18:01

Jeśli chodzi Ci o nieskończoność amunicji dla wszystkich graczy(z przeładowaniem) to łap:



Załączony plik  unlimitedammo.amxx   2,03 KB  5 Ilość pobrań



#205642 Blokada teamu

Napisane przez R3X w 13.01.2011 17:43

Jeśli nie jesteś programistą i nie pokażesz kodu to musisz poprosić o pomoc kogoś zaufanego, kto to ogarnie. Dostałem PW, ale nawet jak uzupełnię kod to go wkleję w tym temacie, a to chyba dla Ciebie słaba opcja.
  • +
  • -
  • 1


#212336 Roll the dice

Napisane przez Zardziol w 03.02.2011 13:32

jestem już w domu to mogę spokojnie napisać:
Jeśli chcesz całą niewidzialność to :
set_user_rendering(id, kRenderFxNone, 0,0,0, kRenderTransAlpha, 0)
Jeśli chcesz 50% widzialności to :
set_user_rendering(id, kRenderFxNone, 0,0,0, kRenderTransAlpha, 127)
Jeśli chcesz 100% widzialności to :
set_user_rendering(id, kRenderFxNone, 0,0,0, kRenderTransAlpha, 255)


#212305 Roll the dice

Napisane przez Zardziol w 03.02.2011 11:54

No to tak :
Najpierw zaimportuj moduł <fun> , czyli napisz #include <fun>
Jeśli chcesz nieśmiertelnośc napisz set_user_godmode(id, 1)
Jeśli chcesz niewidzialność to set_user_rendering
sory ale nie pamiętam paramatrów do powyższej komendy.
Jeśli moc na 15 sekund to zrób odliczanie funkcją halflife_time (nie jestem pewny czy taka nazwa funkcji)


#206204 Jak zrobic blyskawice na graczu by zabierala zycie

Napisane przez R3X w 15.01.2011 19:09

To trzeba Knopersa zawołać, żeby dokończył co zaczął

Lekko przerobilem kod podany przez Knopersa

bo ja już jestem śmiertelnie obrażony B)
  • +
  • -
  • 1


#205935 Blokada teamu

Napisane przez R3X w 14.01.2011 21:27

is_user_alive

jeśli nie jest żywy zwróć PLUGIN_HANDLED na początku funkcji łapiącej say
  • +
  • -
  • 1


#206096 Blokada teamu

Napisane przez R3X w 15.01.2011 14:26

Chyba sam tego nie pisałeś co?

Ta funkcja łapie wiadomości z saya
public ruletka(id){

  • +
  • -
  • 1


#205871 Blokada teamu

Napisane przez R3X w 14.01.2011 18:22

Łap, poustawiaj sobie w tablicach te liczby od 1 do 12

Załączone pliki


  • +
  • -
  • 1


#202669 Blokada teamu

Napisane przez R3X w 03.01.2011 23:24

tak, jeśli NUMER jest na tej liście do CT może wylosować case NUMER:, a jak nie to nie; tak samo z tą drugą listą dl Te
  • +
  • -
  • 1


#202438 Blokada teamu

Napisane przez R3X w 03.01.2011 00:43

Trochę za mało tego kodu dałeś, ale to sobie teraz radź :P

Na górze
new const giNagrodyDlaCt[] = {1, 2, 3, 4, 5, 6, 7, 8, 9 ,10};
new const giNagrodyDlaTe[] = {1, 2, 3, 4, 5, 6, 7, 8, 9 ,10};

Potem przed tymi case 1:, case 2: zmiast losowania co tam masz
	new nagroda = -1;
switch(cs_get_user_team(id)){
    case CS_TEAM_CT:{
        nagroda = giNagrodyDlaCt(random(sizeof giNagrodyDlaCt));
    }
    case CS_TEAM_CT:{
        nagroda = giNagrodyDlaTe(random(sizeof giNagrodyDlaTe));
    }
}

	switch(nagroda){

  • +
  • -
  • 1


#202319 Blokada teamu

Napisane przez R3X w 02.01.2011 16:51

Automatyczna wiadomość


Ten temat został przeniesiony z forum:
AMX Mod X -> Pytania
do
Scripting -> Pytania

  • +
  • -
  • 1


#202320 Blokada teamu

Napisane przez R3X w 02.01.2011 16:52

skoro tak to musisz pokazać sma albo fragmenty odpowiedzialne za nagrody
  • +
  • -
  • 1


#202310 Blokada teamu

Napisane przez R3X w 02.01.2011 16:38

możesz zrobić 2 zestawy danych osobno dla CT i Te

enum Nagrody{
    HP,
    FRAGI,
    GRANAT
};

new giNagrodyDlaCT[] = {HP, GRANAT};
new giNagrodyDlaTe[] = {HP, FRAGI};
i losuj index z tablicy zależnie od drużyny

new nagroda = -1;
switch(cs_get_user_team(id)){
    case CS_TEAM_CT:{
        nagroda = giNagrodyDlaCt(random(sizeof giNagrodyDlaCt));
    }
    case CS_TEAM_CT:{
        nagroda = giNagrodyDlaTe(random(sizeof giNagrodyDlaTe));
    }
}

switch(nagroda){
    case HP:{}
    case FRAGI:{}
    case GRANAT:{}
}


A nieskończoność ammo skopiuj sobie stąd, ja zawsze tak robiłem xD Unlimited Ammo ( the better way ) 0.3.1 *FIXED AGAIN* - AlliedModders
  • +
  • -
  • 1


#201459 Pierwszy plugin

Napisane przez GwynBleidD w 30.12.2010 19:48

1.
pod:
public ruletka(id)
{

dodaj:
if (get_systime()-last_used[id]<CZAS_OCZEKIWANIA){
client_print(id, print_chat, "Musisz odczekać jeszcze %d aby użyć ruletki", CZAS_OCZEKIWANIA-get_systime()+last_used[id])
return PLUGIN_HANDLED;
}
last_used[id] = get_systime();


pod:
#define AUTHOR "Mr.Cma"

dodaj:
new last_used[33] = 0


oraz dodaj funkcję:
public client_connect(id) {
last_used[id] = 0;
}


2.
Pod moją poprzednią edycją (pod last_used[id] = get_systime();) dodaj:
if (!is_user_alive(id) {
client_print(id, print_chat, "Nie możesz grać w ruletkę jak nie żyjesz");
return PLUGIN_HANDLED;
}


3. Spodziewam się że jakiś plugin podmienia zwykłe granaty na te, więc po prostu dodaj graczowi granata danego typu (jak np granat zamrażający jest zamiast smoke to daj graczowi smoke), np:
give_item(id, "weapon_hegrenade")

[dokumentacja]give_item[/dokumentacja] tu masz więcej o tym.
Jeśli plugin nie podmienia zwykłych granatów to pokaż mi jaki plugin to jest, bez tego nic nie zrobię, ale z tego co wiem to to jest niemożliwe żeby dodać taki granat

4. pętla for :) najlepiej zrobić sobie taką funkcję:
stock client_no_print(id, type, const message[], any:...)
static msg[512];
vformat(msg, charsmax(msg), message, 4)
new players[32], num;
for (new i=0; i<num; i++) {
new aid = players[i];
if (aid == id)
continue;
client_print(aid, type, msg);
}
}

Funkcja działa bardzo prosto: wysyła wiadomość wszystkim, oprócz gracza o określonym ID. Jeśli jako ID podamy 0 lub jakiś nieistniejący numer (np 666) to wiadomość wyświetli się wszystkim. Jedyny limit, wiadomość może mieć max 512 znaków(właściwie to 511 bo jeden znak zajmuje null), ale można to zmienić prosto w jednym miejscu :)
Następnie upewniasz się że wszystkie client_print w funkcji ruletki wyglądają tak: client_print(id, ................... po to, żeby graczowi wyświetlana była ta wiadomość, następnie pod tym client print gdzie chcesz innych poinformować że dany gracz wylosował to to i to dodajesz:
new nick[36];
get_user_name(id, nick, charsmax(nick));
client_no_print(id, print_chat, "Gracz %s wylosował kupę", nick);

Gdzie kupę sobie zmieniasz na to co aktualnie wylosował :)

Mam nadzieję, że napisałem zrozumiale.
  • +
  • -
  • 2