←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Jak zrobic perk 1/LW

  • +
  • -
Kofi24 - zdjęcie Kofi24 04.03.2012

Tak jak w temacie znalazlem dezercje i probuje ja przerobic z http://www.holyskill...asa-1-lw-19018/ i poradnikiem od
d0n tHe Pr0oo

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

new bool:ma_klase[33];

new const perk_name[] = "Tajemnica Marines";
new const perk_desc[] = "dostajesz m4 i 1/LW z niego";

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

cod_register_perk(perk_name, perk_desc);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");

}

public cod_perk_enabled(id)
{
ColorChat(id, GREEN, "Perk Tajemnica Marines jest stworzony przez Kofi");
cod_give_weapon(id, CSW_M4A1);
ma_perk[id] = true;
}
public cod_perk_disabled(id)
cod_take_weapon(id, CSW_M4A1);
ma_perk[id] = false;

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

if(!ma_perk[idattacker])
return HAM_IGNORED;

if(damagebits & DMG_BULLET)
{
new weapon = get_user_weapon(idattacker);

if(weapon == CSW_M4A1 && damage > 20.0 && random_num(1,3) == 5)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits)

}
return HAM_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 }
*/

co mam tutaj porpawic,poniewaz chce zrobic jeszcze kilka perkow 1/LW wiec jest mi to bardzo potrzebne lecz znalazlem ino na stary mod
Odpowiedz

  • +
  • -
RebelNight - zdjęcie RebelNight 04.03.2012

Podmieniasz:

To całe:

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

if(!ma_perk[idattacker])
return HAM_IGNORED;

if(damagebits & DMG_BULLET)
{
new weapon = get_user_weapon(idattacker);

if(weapon == CSW_M4A1 && damage > 20.0 && random_num(1,3) == 5)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits)

}
return HAM_IGNORED;

}


Na to:

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

if(!ma_perk[idattacker])
return HAM_IGNORED;

if(get_user_weapon(idattacker) == CSW_M4A1 && !random(wartosc_perku[idattacker]) && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}



Powinno ci zadziałać, jest to szansa 1/LW. Jeżeli chcesz zmienić 1/LW na inny rodzaj broni zmieniasz "CSW_M4A1" na dany rodzaj broni.
Użytkownik RebelNight edytował ten post 04.03.2012 20:24
Odpowiedz

  • +
  • -
Kofi24 - zdjęcie Kofi24 04.03.2012

dzięki a co do tego ze zmiana broni to tyle wiem bo w generatorze zmieniaja mi sie bronie tak samo i duzo poradnikow czytalem :).
Moge wiedziec od ilu do ilu to jest zrobione ? 1/LW-1/LW
Użytkownik Kofi24 edytował ten post 04.03.2012 20:37
Odpowiedz

  • +
  • -
Enson - zdjęcie Enson 04.03.2012

w ten sam sposob zrobilem swoj item i mialem pewien blad
a mianowicie czesto losowalo sie 1/0 z broni i wtedy nie mozna bylo wg trafic w kogos
poza tym RebelNight dales czesc kodu na to co on chce bo bez reszty to nie zadziala
nie zdefiniowales zmiennej wartosc_perku i bedzie mu sypalo errorami w kompilatorze -.-
a no i dmg_bullet tez nie jest zdefiniowane

Ogolnie to w tym kodzie co dales Kofi24 jest pelno bledow ;x w zalaczniku masz naprawione all

caly plugin powinen wygladac w ten sposob

Załączone pliki


Użytkownik Enson edytował ten post 04.03.2012 20:51
Odpowiedz

  • +
  • -
Kofi24 - zdjęcie Kofi24 04.03.2012

dzięki, zauwazylem errory wiec probowalem cos zmienic ale errorow sie gromadzilo z kazdym posunieciem dzięki wielkie :D

Mam jeszcze jedno pytanie to jest 1 na ile? I jezeli robie perk z 2 przedmiotami do 1/LW to ma to wygladac tak:
#include <engine>
#include <hamsandwich>
#include <codmod>
#include <colorchat>
new bool:ma_perk[33];
new wartosc_perku[33];
#define DMG_BULLET (1<<1)
new const perk_name[] = "Tajemnica Pulkownika";
new const perk_desc[] = "dostajesz AWP i HE masz 1/LW z niego";
public plugin_init()
{
register_plugin(perk_name, "1.0", "Enson");
cod_register_perk(perk_name, perk_desc);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");

}
public cod_perk_enabled(id, wartosc)
{
ColorChat(id, GREEN, "Perk Tajemnica Pulkownika jest stworzony przez Kofi");
cod_give_weapon(id, CSW_AWP | CSW_HEGRENADE);
ma_perk[id] = true;
wartosc_perku[id] = wartosc;
}
public cod_perk_disabled(id)
{
cod_take_weapon(id, CSW_AWP | CSW_HEGRENADE);
ma_perk[id] = false;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;

if(!ma_perk[idattacker])
return HAM_IGNORED;

if(get_user_weapon(idattacker) == CSW_AWP | CSW_HEGRENADE && !random(wartosc_perku[idattacker]) && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}

Użytkownik Kofi24 edytował ten post 04.03.2012 21:10
Odpowiedz

  • +
  • -
Enson - zdjęcie Enson 04.03.2012

to jest 1/LW
LW - losowa wartosc

nie tak bo z HE robi sie inaczej
patrz zalacznik

Załączone pliki

Odpowiedz

  • +
  • -
Kofi24 - zdjęcie Kofi24 05.03.2012

Twoje perk isie nie kompiluja:(
t.z.n. zrobilem te perki na takiej samej zasadzie np. mam tajemnice marines z m4 to zrobiel mtak samo ino nazwe i bron zmienilem chcialem skompilowac i nic nie czyta mi wersji amx_x, a pozniej zrobilem z perkami, ktore ty zrobiles juz nie mialy erroru a zrobilem to samo tylk ozamienilem kilka rzeczy :(zamieszczam error)
include/engine.inc(16) : error 017: undefined symbol "AMXX_VERSION_NUM"
A tutaj .sma
#include <engine>
#include <hamsandwich>
#include <codmod>
#include <colorchat>
new bool:ma_perk[33];
new wartosc_perku[33];
#define DMG_BULLET (1<<1)
new const perk_name[] = "Tajemnica ZSRR";
new const perk_desc[] = "dostajesz AK i 1/LW z niego";
public plugin_init()
{
register_plugin(perk_name, "1.0", "QTM_Peyote");
cod_register_perk(perk_name, perk_desc);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");

}
public cod_perk_enabled(id, wartosc)
{
ColorChat(id, GREEN, "Perk Tajemnica ZSRR jest stworzony przez Kofi");
cod_give_weapon(id, CSW_AK47);
ma_perk[id] = true;
wartosc_perku[id] = wartosc;
}
public cod_perk_disabled(id)
{
cod_take_weapon(id, CSW_AK47);
ma_perk[id] = false;
}
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;

if(!ma_perk[idattacker])
return HAM_IGNORED;

if(get_user_weapon(idattacker) == CSW_AK47 && !random(wartosc_perku[idattacker]) && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}
Odpowiedz