←  Prośby o Klasę/Perk

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
[Prośba] O 4 klasy premium.

  • +
  • -
WSP3S - zdjęcie WSP3S 13.07.2012

No to bardzo bym prosił o zrobienie 4 klas.

Lekki Snajper (Premium) - Posiada 1/2 szansy na zabicie ze scouta, widoczność gdy kuca z nożem 10/255, Auto BH, 3 skoki w powietrzu
Komandor (Premium) - Posiada M3/XM1014 (1/4), Kosa(1/1 LPM), 120HP bazowe, widocznosc na nozu 180/255, 20 dodatkowej szybkości, 1 skok w powietrzu
Ciezki Prof. Snajper - Posiada AWP (1/1), Kosa(1/1 LPM), 150HP bazowe, widocznosc na nożu 150/255, 40 dodatkowej szybkości, 2 skoki w powietrzu
Lekki Prof. Snajper - Posiada Scout (1/1), Kosa(1/1 LPM), 180HP bazowe, widoczność na nożu 120/255, 60 dodatkowej szybkości, 3 skoki w powietrzu

Klasy proszę robić na literke t (pozniej sobie pozmieniam)
Odpowiedz

GabrieL - zdjęcie GabrieL 14.07.2012

Lekki snajper.
#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>

new const nazwa[] = "Lekki Snajper[premium]";
new const opis[] = "Posiada 1/2 szansy na zabicie ze scouta, widoczność gdy kuca z nożem 10/255, Auto BH, 3 skoki w powietrzu";
new const bronie = (1<<CSW_SCOUT);
new const zdrowie = 10;
new const kondycja = 10;
new const inteligencja = 10;
new const wytrzymalosc = 10;

new skoki[33];

new ma_klase[33];

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

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

register_forward(FM_PlayerPreThink, "fwPrethink_Niewidzialnosc", 1);


register_forward(FM_CmdStart, "fwCmdStart_MultiJump");


register_forward(FM_PlayerPreThink, "fwPrethink_AutoBH");


RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ");

}

public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
client_print(id, print_chat, "[Lekki Snajper[premium]] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
ma_klase[id] = true;

return COD_CONTINUE;
}

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

}


//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, 10);
}
else
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}

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;
}

public fwPrethink_AutoBH(id)
{
if(!ma_klase[id])
return PLUGIN_CONTINUE

if (pev(id, pev_button) & IN_JUMP) {
new flags = pev(id, pev_flags)

if (flags & FL_WATERJUMP)
return FMRES_IGNORED;
if ( pev(id, pev_waterlevel) >= 2 )
return FMRES_IGNORED;
if ( !(flags & FL_ONGROUND) )
return FMRES_IGNORED;

new Float:velocity[3];
pev(id, pev_velocity, velocity);
velocity[2] += 250.0;
set_pev(id, pev_velocity, velocity);

set_pev(id, pev_gaitsequence, 6);

}
return FMRES_IGNORED;
}

public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){
if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 2) != 1 )
return HAM_IGNORED;

cs_set_user_armor(this, 0, CS_ARMOR_NONE);
SetHamParamFloat(4, float(get_user_health(this) + 1));

return HAM_HANDLED;
}


Komandor:

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>

new const nazwa[] = "Komandor (Premium)";
new const opis[] = "Posiada M3/XM1014 (1/4), Kosa(1/1 LPM), 120HP bazowe, widocznosc na nozu 180/255, 20 dodatkowej szybkości, 1 skok w powietrzu";
new const bronie = (1<<CSW_XM1014)|(1<<CSW_M3);
new const zdrowie = 10;
new const kondycja = 20;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new skoki[33];

new ostatnio_prawym[33];

new ma_klase[33];

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

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

register_event("CurWeapon", "eventKnife_Niewidzialnosc", "be", "1=1");


register_forward(FM_CmdStart, "fwCmdStart_MultiJump");


RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ");


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)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
client_print(id, print_chat, "[Komandor (Premium)] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
ma_klase[id] = true;

return COD_CONTINUE;
}

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

}

public eventKnife_Niewidzialnosc(id)
{
if(!ma_klase[id])
return;

if( read_data(2) == CSW_KNIFE )
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 180);
}
else
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}

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] = 1;

return FMRES_IGNORED;
}

public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){
if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 4) != 1 )
return HAM_IGNORED;

cs_set_user_armor(this, 0, CS_ARMOR_NONE);
SetHamParamFloat(4, float(get_user_health(this) + 1));

return HAM_HANDLED;
}

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;
}


Cieżki snajper:

#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>

new const nazwa[] = "Ciezki Prof. Snajper";
new const opis[] = "Posiada AWP (1/1), Kosa(1/1 LPM), 150HP bazowe, widocznosc na nożu 150/255, 40 dodatkowej szybkości, 2 skoki w powietrzu";
new const bronie = (1<<CSW_AWP);
new const zdrowie = 25;
new const kondycja = 40;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new skoki[33];

new ostatnio_prawym[33];

new ma_klase[33];

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

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

register_event("CurWeapon", "eventKnife_Niewidzialnosc", "be", "1=1");


register_forward(FM_CmdStart, "fwCmdStart_MultiJump");


RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ");


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)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
client_print(id, print_chat, "[Ciezki Prof. Snajper] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
ma_klase[id] = true;

return COD_CONTINUE;
}

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

}

public eventKnife_Niewidzialnosc(id)
{
if(!ma_klase[id])
return;

if( read_data(2) == CSW_KNIFE )
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 150);
}
else
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}

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] = 2;

return FMRES_IGNORED;
}

public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){
if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 1) != 1 )
return HAM_IGNORED;

cs_set_user_armor(this, 0, CS_ARMOR_NONE);
SetHamParamFloat(4, float(get_user_health(this) + 1));

return HAM_HANDLED;
}

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;
}



Lekki snajper :

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>

new const nazwa[] = "Lekki Prof. Snajper";
new const opis[] = "Posiada Scout (1/1), Kosa(1/1 LPM), 180HP bazowe, widoczność na nożu 120/255, 60 dodatkowej szybkości, 3 skoki w powietrzu";
new const bronie = (1<<CSW_SCOUT);
new const zdrowie = 40;
new const kondycja = 60;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new skoki[33];

new ostatnio_prawym[33];

new ma_klase[33];

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

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

register_event("CurWeapon", "eventKnife_Niewidzialnosc", "be", "1=1");


register_forward(FM_CmdStart, "fwCmdStart_MultiJump");


RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenZ");


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)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
client_print(id, print_chat, "[Lekki Prof. Snajper] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
ma_klase[id] = true;

return COD_CONTINUE;
}

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

}

public eventKnife_Niewidzialnosc(id)
{
if(!ma_klase[id])
return;

if( read_data(2) == CSW_KNIFE )
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 120);
}
else
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}

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;
}

public fwTakeDamage_JedenZ(this, idInf, idAtt, Float:fDmg, dmgBits){
if(!is_user_alive(idAtt) || !ma_klase[idAtt] || !(dmgBits & (1<<1) ) || random_num(1, 1) != 1 )
return HAM_IGNORED;

cs_set_user_armor(this, 0, CS_ARMOR_NONE);
SetHamParamFloat(4, float(get_user_health(this) + 1));

return HAM_HANDLED;
}

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;
}


Do takich klas masz generator...
Odpowiedz

  • +
  • -
WSP3S - zdjęcie WSP3S 14.07.2012

a czy tutaj z generatora nie bedzie kosa na PPM + LPM ?
Oraz czy z generatora da sie zrobić : gdy kuca z nożem
Odpowiedz

  • +
  • -
GeDox - zdjęcie GeDox 14.07.2012

a czy tutaj z generatora nie bedzie kosa na PPM + LPM ?

O to martwi się zmienna ostatnio_prawym.

Oraz czy z generatora da sie zrobić : gdy kuca z nożem

Da...
Odpowiedz

  • +
  • -
WSP3S - zdjęcie WSP3S 14.07.2012

Dzięki zaraz sprawdze czy klasy działają.
Odpowiedz

  • +
  • -
Hleb - zdjęcie Hleb 14.07.2012

@GabrieL

Te klasy nie mają prawa właściwie działać (mowa o szansie na natychmiastowe zabicie z broni)

@Autor Tematu

łap Lekkiego Snajpera

Spoiler
Odpowiedz