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
 

M4RV1N - zdjęcie

M4RV1N

Rejestracja: 18.02.2013
Aktualnie: Nieaktywny
Poza forum Ostatnio: 16.05.2016 20:09
*****

#591158 Plugin Zombie Mod

Napisane przez M4RV1N w 07.12.2013 16:38

Zombie Plague 4.3  ----- > http://amxx.pl/topic...-plague-mod-43/

GunXPMod  ------ > http://amxx.pl/topic...-zapis-na-nick/

 

GunXPMod'a musisz sobie skonfigurować pod Zombie plague


  • +
  • -
  • 1


#590799 Nazwy nieistniejących sieci?

Napisane przez M4RV1N w 06.12.2013 11:54

Cs-Happy.pl


  • +
  • -
  • 1


#589329 Jak dodać paczke ?

Napisane przez M4RV1N w 28.11.2013 20:15

Zazwyczaj jak się ściąga paczkę z tego forum to pliki, które trzeba wrzucić na FTP serwera są folderach tak samo nazwanych. Przykład:

 

Rozpakowujesz paczkę i widzisz folder cstrike wchodzisz w niego (na FTP serwera robisz to samo)

Przykładowo masz tam foldery models, sounds, addons (szukasz takich folderów na FTP serwera w folderze cstrike)

Otwierasz folder models (na FTP robisz to samo)

Widzisz pliki o rozszerzeniu .mdl 

Teraz wrzucasz pliki z rozpakowanej paczki na FTP serwera (czyli pliku o rozszerzeniu .mdl wrzucasz do folderu models)

 

Jeżeli po wejściu w folder models paczki będzie folder którego nie ma u Ciebie na FTP to po prostu wrzucasz cały ten folder (nie wchodzisz w ten folder tylko wrzucasz go do models)

 

Nie wiem czy da się to łatwiej opisać...


  • +
  • -
  • 1


#588906 Nie kompiluje klasy co źle dalej zrobiłem?

Napisane przez M4RV1N w 27.11.2013 15:15

Nie jest to error tylko warring ;P Nie jest groźny, jeżeli chcesz się go pozbyć to 

Po:

#include <fakemeta>

Dodaj:

#pragma tabsize 0

Lub wrzuć kod klasy w AMXX Studio, u góry w zakładce "Tools" wciśnij "Indenter"


  • +
  • -
  • 1


#588893 Nie kompiluje klasy co źle dalej zrobiłem?

Napisane przez M4RV1N w 27.11.2013 14:52

8 linijka, są 2 średniki

new const bronie = 1<<CSW_M4A1 || 1<<CSW_AK47;;

Prawidłowy kod:

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <fakemeta>


new const nazwa[] = "Determinator SILVER |1|";
new const opis[] = "1/10 na wyrzucenie broni z m4 i AK-47, widzi niewidzialnych, 4 skoki";
new const bronie = 1<<CSW_M4A1 || 1<<CSW_AK47;
new const zdrowie = 20;
new const kondycja = 20;
new const inteligencja = 0;
new const wytrzymalosc = 20;
new bool:ma_klase[33];
new skoki[33];


public plugin_init()
{
        register_forward(FM_CmdStart, "CmdStart");
        register_plugin(nazwa, "1.0", "Pas");
        register_forward(FM_AddToFullPack, "FwdAddToFullPack", 1)
        cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
        
}


public cod_class_enabled(id)
{
        ma_klase[id] = true;
        return COD_CONTINUE;
}
        
public cod_class_disabled(id)
        ma_klase[id] = false;


public FwdAddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)
{
        if(!is_user_connected(host) || !is_user_connected(ent))
                return;
                
        if(!ma_klase[host])
                return;
                
        set_es(es_handle, ES_RenderAmt, 255.0);
}
public Damage(id)
{
new idattacker = get_user_attacker(id);


if(!is_user_alive(idattacker))
return;


if(!ma_klase[idattacker])
return;


if(random_num(1, 10) != 1)
return;


client_cmd(id, "drop");
}
public CmdStart(id, uc_handle)


{


if(!is_user_alive(id) || !ma_klase[id]) //jeśli tworzymy perk, wstawiamy ma_perk zamiast ma_klase


return FMRES_IGNORED;






new flags = pev(id, pev_flags);






if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])


{


skoki[id]--;


new Float:velocity[3];


pev(id, pev_velocity,velocity);


velocity[2] = random_float(265.0,285.0);


set_pev(id, pev_velocity,velocity);


}


else if(flags & FL_ONGROUND)


skoki[id] = 2; //tutaj podajemy ilość skokow w powietrzu, jaką może wykonać klasa






return FMRES_IGNORED;


}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1250\\ deff0\\ deflang1045{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/

 


  • +
  • -
  • 1


#588244 [ROZWIĄZANE] Jak dodać Admina na najsłabszą Flage?

Napisane przez M4RV1N w 25.11.2013 14:21

a – immunitet (gracz z tą flagą ma immunitet czyli nie może być kickowany, banowany, slapowany itp. Zaleca się nie dawanie tej flagi nikomu. Co najwyżej sobie.

b – rezerwacja slotu (gracz dostaje rezerwacje slotu)

c – amx_kick (admin z tą flagą może kopać ludzi z serwera)

d – amx_ban i amx_unban (admin z tą flagą może banować i odbanowywac graczy) 

e – amx_slay i amx_slap (admin z tą flagą może slayować i slapować graczy) 

f – amx_map (admin z tą flagą może zmieniać mapę) 

g – amx_cvar (admin z tą flagą może zmieniać ustawienia serwera [nie wszystkie!]) 

h – amx_cfg (admin z tą flagą może uruchamiać configi serwera) 

i – amx_chat (admin z tą flagą może używać kolorowych napisów) 

j – amx_vote (admin z tą flagą może uruchamiać glosowania) 

k – dostęp do sv_password (admin z tą flagą może ustawić hasło na serwerze) 

l – dostęp do amx_rcon (admin z tą flagą może wykonywać polecenia na konsoli samego serwera poprzez amx_cvar) 

m – własny poziom A 

n – własny poziom B 

o – własny poziom C 

p – własny poziom

D – (Flagi te są używane przez dodatkowe pluginy. Poziom A ma najniższy priorytet, poziom H najwyższy.)

q – własny poziom E 

r – własny poziom F 

s – własny poziom G 

t – własny poziom H 

u – menu access (admin z tą flagą może używać menu) 

z – użytkownik (flaga do oznaczenia NIE admin, zwykłego użytkownika) 

 

 

Wystarczy poszukać, masz tu opisane co dana flaga nadaje graczowi :)


  • +
  • -
  • 1


#586773 Skomplikowanie pluginu

Napisane przez M4RV1N w 19.11.2013 21:42

Proszę:

 

 

Załączone pliki


  • +
  • -
  • 2


#584585 [ROZWIĄZANE] Jak dodać Nieśmiertelność i Teleport klasie.

Napisane przez M4RV1N w 11.11.2013 14:16

Teleport.

 

Biblioteki:
 

#include <fakemeta>
#include <xs>

Zmienne:
 

new bool:uzyl[33];

Rejestrujemy:
 

register_event("ResetHUD", "ResetHUD", "abe");

W cod_class_enabled:
 

uzyl[id] = false;
return COD_CONTINUE;

I na koncu sma:
 

public cod_class_skill_used(id)
{

if (!uzyl[id]==false)
{
client_print(id, print_center, "Teleport mozna uzywac co 20s");
return PLUGIN_CONTINUE;
}

if(uzyl[id] || !is_user_alive(id))
return PLUGIN_CONTINUE;

new Float:start[3], Float:view_ofs[3];
pev(id, pev_origin, start);
pev(id, pev_view_ofs, view_ofs);
xs_vec_add(start, view_ofs, start);

new Float:dest[3];
pev(id, pev_v_angle, dest);
engfunc(EngFunc_MakeVectors, dest);
global_get(glb_v_forward, dest);
xs_vec_mul_scalar(dest, 999.0, dest);
xs_vec_add(start, dest, dest);

engfunc(EngFunc_TraceLine, start, dest, 0, id, 0);

new Float:fDstOrigin[3];
get_tr2(0, TR_vecEndPos, fDstOrigin);

if(engfunc(EngFunc_PointContents, fDstOrigin) == CONTENTS_SKY)
return PLUGIN_CONTINUE;

new Float:fNormal[3];
get_tr2(0, TR_vecPlaneNormal, fNormal);

xs_vec_mul_scalar(fNormal, 50.0, fNormal);
xs_vec_add(fDstOrigin, fNormal, fDstOrigin);
set_pev(id, pev_origin, fDstOrigin);
uzyl[id] = true;
set_task ( 20.0, "ResetHUD", id )///Tu zmieniamy co ile teleport
set_task ( 10.0, "InfoTel", id )
}

public ResetHUD(id)
{
uzyl[id] = false;
}

public InfoTel(id)
{
client_print(id, print_center, "Ok, teleportuj sie :)");
}


Radar (Widzisz wrogow):

Zmienne:

new g_msgHostageAdd, g_msgHostageDel;
new bool:ma_klase[33]

Rejestrujemy:

g_msgHostageAdd = get_user_msgid("HostagePos");
g_msgHostageDel = get_user_msgid("HostageK");

set_task (2.0,"radar_scan",_,_,_,"b");

I na koncu sma:

public radar_scan(id)
{
new PlayerCoords[3];

for (new id=1; id<=32; id++)
{
if((!is_user_alive(id))||(!ma_klase[id])) continue;



for (new i=1;i<=32;i++)
{
if(!is_user_alive(i) || get_user_team(i) == get_user_team(id))

continue;

get_user_origin(i, PlayerCoords)



message_begin(MSG_ONE_UNRELIABLE, g_msgHostageAdd, {0,0,0}, id)
write_byte(id)
write_byte(i)
write_coord(PlayerCoords[0])
write_coord(PlayerCoords[1])
write_coord(PlayerCoords[2])
message_end()



message_begin(MSG_ONE_UNRELIABLE, g_msgHostageDel, {0,0,0}, id)
write_byte(i)
message_end()
}
}
}

  • +
  • -
  • 1


#583312 [ROZWIĄZANE] Klasa Hacker

Napisane przez M4RV1N w 06.11.2013 20:16

Proszę:

 

Załączone pliki


  • +
  • -
  • 2


#581951 Prośba o 6 perków min. Grawtiacja spidera

Napisane przez M4RV1N w 01.11.2013 14:29

Grawitacja Spider Man'a

 

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
        
new const perk_name[] = "Grawitacja Spider Man'a";
new const perk_desc[] = "Dostajemy zwiekszona grawitacje";
    
new ma_perk[33];


public plugin_init()
{
register_plugin(perk_name, "1.0", "QTM_Peyote")


cod_register_perk(perk_name, perk_desc);
RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);


}


public cod_class_enabled(id)
{


  entity_set_float(id, EV_FL_gravity, 400.0/800.0);
ma_perk[id] = true;


}


public cod_class_disabled(id)
{


  entity_set_float(id, EV_FL_gravity, 1.0);
ma_perk[id] = false;


}


public fwSpawn_Grawitacja(id)
{
if(ma_perk[id])
entity_set_float(id, EV_FL_gravity, 400.0/800.0);
}
Mlot Tora
 
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta>
        
new const perk_name[] = "Mlot Tora";
new const perk_desc[] = "Dostajemy 1/2 z kosy (LPM)";
    
new ostatnio_prawym[33];


new ma_perk[33];


public plugin_init()
{
register_plugin(perk_name, "1.0", "QTM_Peyote")


cod_register_perk(perk_name, perk_desc);


RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenCios");
RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_knife", "fwPrimaryAttack_JedenCios");
RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "fwSecondaryAttack_JedenCios");


}


public cod_class_enabled(id)
{
ma_perk[id] = true;


}


public cod_class_disabled(id)
{
ma_perk[id] = false;


}


public fwTakeDamage_JedenCios(id, ent, attacker)
{
if(is_user_alive(attacker) && ma_perk[attacker] && get_user_weapon(attacker) == CSW_KNIFE && !ostatnio_prawym[id])
{
cs_set_user_armor(id, 0, CS_ARMOR_NONE);
SetHamParamFloat(4, float(get_user_health(id) + 1));
return HAM_HANDLED;
}
return HAM_IGNORED;
}


public fwPrimaryAttack_JedenCios(ent)
{
new id = pev(ent, pev_owner);
ostatnio_prawym[id] = 1;
}


public fwSecondaryAttack_JedenCios(ent)
{
new id = pev(ent, pev_owner);
ostatnio_prawym[id] = 0;
}

 


  • +
  • -
  • 1


#581719 Klasa premium nie dziala na premium

Napisane przez M4RV1N w 31.10.2013 15:51

Sprawdź tą

 

#include <amxmodx>
#include <codmod>
#include <hamsandwich>
#include <ColorChat>
#include <engine>


#define DMG_BULLET (1<<1)




new bool:ma_klase[33];


new const nazwa[] = "Frankenstein (PREMIUM)";
new const opis[] = "Dostaje dodatkowe 30 procent obrazen z AK47";
new const bronie = 1<<CSW_AK47;
new const zdrowie = 15;
new const kondycja = 0;
new const inteligencja = 20;
new const wytrzymalosc = 10;


public plugin_init() 
{
register_plugin(nazwa, "1.0", "QTM_Peyote");


cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);


RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}


public cod_class_enabled(id)


{


ColorChat(id, RED, "Nie masz uprawnien, aby korzystac z tej klasy"); // Gdy gracz nie ma flagi wyświetli mu komunikat


if(!(get_user_flags(id) & ADMIN_LEVEL_H)) //FLAGA


{


ColorChat(id, GREEN, "Wybrales klase %s modyfikowana przez Corel | Wbij na forum www.hard-shooters.cba.pl ", nazwa); // Info ze przykładowa klasa jest PREMIUM 


return COD_STOP;


}


ma_klase[id] = true;


return COD_CONTINUE;


}


public cod_class_disabled(id)
ma_klase[id] = false;


public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;


if(!ma_klase[idattacker])
return HAM_IGNORED;


if(get_user_weapon(idattacker) == CSW_AK47 && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, damage*0.30, 0.0, idinflictor, damagebits);


return HAM_IGNORED;
}

PS. Powinno all działać :)

 

  • +
  • -
  • 1


#581648 Klasa premium nie dziala na premium

Napisane przez M4RV1N w 31.10.2013 08:37

W public cod_class_enabled(id) po

if(!(get_user_flags(id) & ADMIN_LEVEL_F))
    {
        ColorChat(id, RED, "[%s] Nie masz uprawnien, aby korzystac z tej klasy.");
        return COD_STOP;
    }

dodaj

else
        {
         ColorChat(id, GREEN, "Wybrales klase %s modyfikowana przez Corel | Wbij na forum www.hard-shooters.cba.pl ", nazwa);
        }

Czyli cały public ma wyglądać tak:

public cod_class_enabled(id)
{
    if(!(get_user_flags(id) & ADMIN_LEVEL_F))
{
        ColorChat(id, RED, "[%s] Nie masz uprawnien, aby korzystac z tej klasy.");
        return COD_STOP;
    }
else
{
ColorChat(id, GREEN, "Wybrales klase %s modyfikowana przez Corel | Wbij na forum www.hard-shooters.cba.pl ", nazwa);
}
    ma_klase[id] = true;
    return COD_CONTINUE;
}

  • +
  • -
  • 1


#579869 [ROZWIĄZANE] Przerobienie klas Premium | Dodanie multijumpa

Napisane przez M4RV1N w 23.10.2013 12:25

Nie mam pojęcia po co w tej klasie biblioteka colorchat, ale to tak na marginesie..

 

Powinno działać, sprawdź :

 

Załączone pliki


  • +
  • -
  • 2


#579651 [ROZWIĄZANE] Dodanie Frakcji do silnika.

Napisane przez M4RV1N w 22.10.2013 13:35

Frakcję są wczytywane z pliku cod_frakcje.ini co ułatwia dodawanie ich.

 

W pliku cod_frakcje.ini masz dodane podstawowe klasy do frakcji "Zwykle" i na takiej samej zasadzie dodawaj nowe klasy (podałem Ci przykład w pliku)

 

Plik cod_frakcje.ini wrzucasz do cstrike->addons->amxmodx->configs.

 

Jeżeli będziesz miał jakiś problem pisz na PW :)

Załączone pliki


  • +
  • -
  • 1


#578245 [ROZWIĄZANE] [modyfikacja] klasy

Napisane przez M4RV1N w 17.10.2013 07:33

Proszę:

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
        
new const nazwa[]   = "Pro Sniper";
new const opis[]    = "Klasa premium, ma 1/1 szansy na zabicie  z AWP oraz noza, gdy kuca z nozem jest slabo widoczna ";
new const bronie    = (1<<CSW_AWP)|(1<<CSW_DEAGLE);
new const zdrowie   = 10;
new const kondycja  = 15;
new const inteligencja = 10;
new const wytrzymalosc = 5;

new ostatnio_prawym[33];
new skoki[33];
new ma_klase[33];
new oneonone[33][31]

public plugin_init()
{
    register_plugin(nazwa, "1.0", "amxx.pl");

    cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

    register_forward(FM_PlayerPreThink, "fwPrethink_Niewidzialnosc", 1);
    
    RegisterHam(Ham_TakeDamage, "player", "TakeDamage");

    RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenCios");
    RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_knife", "fwPrimaryAttack_JedenCios");
    RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "fwSecondaryAttack_JedenCios");
    register_forward(FM_CmdStart, "fwCmdStart_MultiJump");

}

public cod_class_enabled(id)
{
    if(!(get_user_flags(id) & ADMIN_LEVEL_H))
    {
        client_print(id, print_chat, "[Pro Sniper] Nie masz uprawnien, aby uzywac tej klasy.")
        return COD_STOP;
    }
    ma_klase[id] = true;
    oneonone[id][CSW_AWP] = 1
   
    return COD_CONTINUE;
}

public cod_class_disabled(id)
{
    set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
        ma_klase[id] = false;
    oneonone[id][CSW_AWP] = 0

}

//Przy kucaniu
public fwPrethink_Niewidzialnosc(id)
{
    if(!ma_klase[id])
        return;

    new button = get_user_button(id);
    if( button & IN_DUCK && get_user_weapon(id) == CSW_KNIFE)
    {
        set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 50);
    }
    else
    {
        set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
    }
}

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
        if(!is_user_connected(idattacker))
                return HAM_IGNORED;
        
        if(!ma_klase[idattacker])
                return HAM_IGNORED;
        
        if(!(damagebits & (1<<1)))
                return HAM_IGNORED;
        
        new hp_ofiary = get_user_health(this)
        new bron_atakujacego = get_user_weapon(idattacker)
        
        if (oneonone[idattacker][bron_atakujacego] > 0)
        {
                if (random_num(1,oneonone[idattacker][bron_atakujacego]) == 1) cod_inflict_damage(idattacker, this, float(hp_ofiary), 0.0, idinflictor, damagebits);
        }
        
        return HAM_IGNORED;
}
public fwTakeDamage_JedenCios(id, ent, attacker)
{
    if(is_user_alive(attacker) && ma_klase[attacker] && get_user_weapon(attacker) == CSW_KNIFE && ostatnio_prawym[id])
    {
        cs_set_user_armor(id, 0, CS_ARMOR_NONE);
        SetHamParamFloat(4, float(get_user_health(id) + 1));
        return HAM_HANDLED;
    }
    return HAM_IGNORED;
}

public fwPrimaryAttack_JedenCios(ent)
{
    new id = pev(ent, pev_owner);
    ostatnio_prawym[id] = 1;
}

public fwSecondaryAttack_JedenCios(ent)
{
    new id = pev(ent, pev_owner);
    ostatnio_prawym[id] = 0;
}

public fwCmdStart_MultiJump(id, uc_handle)
{
    if(!is_user_alive(id) || !ma_klase[id])
        return FMRES_IGNORED;

    new flags = pev(id, pev_flags);

    if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])
    {
        skoki[id]--;
        new Float:velocity[3];
        pev(id, pev_velocity,velocity);
        velocity[2] = random_float(265.0,285.0);
        set_pev(id, pev_velocity,velocity);
    }
    else if(flags & FL_ONGROUND)
        skoki[id] = 3;

    return FMRES_IGNORED;
}

  • +
  • -
  • 1