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
 

Krotix - zdjęcie

Krotix

Rejestracja: 04.04.2011
Aktualnie: Nieaktywny
Poza forum Ostatnio: 06.10.2012 18:07
-----

Moje tematy

[ROZWIĄZANE] Próba dodania nowej statystyki nie wyszła

03.10.2012 10:48

Witam!

Mam problem gdyż staram się dodać nowe statystyki do silnika jednak ogromny problem sprawia mi dodanie statystyki do klasy, gdyż pokazuje informacje o tym, że dana funkcja nie jest w użyciu. Przerabiałem statystyki na podstawie tych 4 stworzonych. Statystya to "Siła" która ma dodawac dmg. Grzebałem też co nie co w codmod.inc więc radzę sprawdzić też to.

Bym zapomniał proszę o sprawdzenie w silniku czy to jest ok :
public ZadajObrazenia(atakujacy, ofiara, Float:obrazenia, Float:czynnik_sily, byt_uszkadzajacy, dodatkowe_flagi)
ExecuteHam(Ham_TakeDamage, ofiara, byt_uszkadzajacy, atakujacy, obrazenia+PobierzSile(atakujacy, 1, 1, 1)*czynnik_sily, /*1<<31 |*/ dodatkowe_flagi);


Załączony plik  QTM_CodMod.sma   42,31 KB  46 Ilość pobrań
  QTM_CodMod.amxx
Załączony plik  codclass_rusher.sma   501 bajtów  53 Ilość pobrań
  codclass_rusher.amxx
Załączony plik  codmod.inc   8,04 KB  50 Ilość pobrań

Exp zdziczał...

07.06.2012 10:58

Witam!

Mam pewien problem od jakiegoś czasu gdyż w configu CoD'a mam ustawione 30000 expa za zabicie i 50000 za wygrana. Problem wygląda tak, iż czasem za zabicie gracza leci nawet do 6 mln expa... Ktoś może znać przyczynę? Dołączam sma silnika.

Załączony plik  QTM_CodMod.sma   42,96 KB  78 Ilość pobrań
  QTM_CodMod.amxx

[Problem] Model dla klasy nie dziala

26.05.2012 22:58

Witam!

Postanowiłem, że zrobię model postaci dla klasy "Agent" wojowałem i nic nie zdziałałem. Teraz gdy np. jestem w CT mam model TT i odwrotnie. Jest podany model postaci, jest on na ftp, pobieral sie itd. Jednak ta klasa nie ma zmienionego modelu. Jeżeli mógł by mi ktoś pomóc to bym był bardzo wdzięczny. Chcę aby ta klasa miała model agenta niezależnie od tego czy jest w TT czy CT.
Kod :
///////////////////////////
// //
// Klasa Agent (Premium) //
// Autor "Kubion70" //
// //
///////////////////////////
#include <amxmodx>
#include <codmod>
#include <fakemeta>
#include <hamsandwich>
#include <cstrike>

#define DMG_BULLET (1<<1)

new const nazwa[] = "Agent (Premium)";
new const opis[] = "Dostaje MP5 z ktorej ma 1/10, podwojny skok, 1/7 z Deagla i 1/1 z noza";
new const bronie = 1<<CSW_MP5NAVY | 1<<CSW_DEAGLE;
new const zdrowie = 100;
new const kondycja = 20;
new const inteligencja = 0;
new const wytrzymalosc = 60;

new bool:ma_klase[33];

new bool:moze_skoczyc[33];

new const maxClip[31] = { -1, 13, -1, 10, 1, 7, 1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 };

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

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

RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1);
register_forward(FM_CmdStart, "CmdStart");
register_event("DeathMsg", "DeathMsg", "ade");
}

public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
client_print(id, print_chat, "[V-Skill] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
ma_klase[id] = true;
cs_set_user_model(id, (get_user_team(id) == 1)? "agent": "agent");
return COD_CONTINUE;
}

public cod_class_disabled(id)
{
ma_klase[id] = false;
cs_reset_user_model(id);
}

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_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

if(get_user_weapon(idattacker) == CSW_MP5NAVY && !random(10) && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

if(get_user_weapon(idattacker) == CSW_DEAGLE && !random(7) && damagebits & DMG_BULLET)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}

public CmdStart(id, uc_handle)
{
if(!ma_klase[id])
return FMRES_IGNORED;

new button = get_uc(uc_handle, UC_Buttons);
new oldbutton = pev(id, pev_oldbuttons);
new flags = pev(id, pev_flags);
if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && moze_skoczyc[id])
{
moze_skoczyc[id] = false;
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)
moze_skoczyc[id] = true;

return FMRES_IGNORED;
}

public DeathMsg()
{
new killer = read_data(1);
new victim = read_data(2);

if(!is_user_connected(killer))
return PLUGIN_CONTINUE;

if(ma_klase[victim] && !ma_klase[killer])
cod_set_user_xp(killer, cod_get_user_xp(killer)+10);

if(ma_klase[killer])
{
new cur_health = pev(killer, pev_health);
new Float:max_health = 100.0+cod_get_user_health(killer);
new Float:new_health = cur_health+20.0<max_health? cur_health+20.0: max_health;
set_pev(killer, pev_health, new_health);

new weapon = get_user_weapon(killer);
if(maxClip[weapon] != -1)
set_user_clip(killer, maxClip[weapon]);
}


return PLUGIN_CONTINUE;
}

stock set_user_clip(id, ammo)
{
new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
get_weaponname(weapon, weaponname, 31);
while ((weaponid = engfunc(EngFunc_FindEntityByString, weaponid, "classname", weaponname)) != 0)
if (pev(weaponid, pev_owner) == id) {
set_pdata_int(weaponid, 51, ammo, 4);
return weaponid;
}
return 0;
}

public plugin_precache()
{
precache_model("models/player/v-skill/agent/agent.mdl");
}

public Odrodzenie(id)
{
if(ma_klase[id])
{
cs_set_user_model(id, (get_user_team(id) == 1)? "agent": "agent");
}
}

Nie dziala premium z autorespawnu. (Moja edycja)

26.05.2012 16:23

Witam!

Chciałbym prosić was o pomoc ze względu na to, iż moja edycja pluginu na autorespawn nie powiodła się. Chciałem aby zwykli gracze respawnowali się w ciągu 10s a ludzie z flagą "H" w ciągu 3s. Proszę o pomoc.
Kod wygląda tak :

//////////////////////////////////
// AutoRespawn edit by Kubion70 //
//////////////////////////////////
#include <amxmodx>
#include <hamsandwich>

#define VERSION "0.1"

#define TASK_RESPAWN 1337

new g_iToRespawn[33];
new g_iToRespawnPremium[33];

public plugin_init(){
register_plugin("Deatmatch COD", VERSION, "Kubion70")
register_event("DeathMsg", "eventDeath", "a");
set_task(10.0, "taskCvars");
register_clcmd("say /respawn", "resp");
}

public taskCvars() set_cvar_float("mp_roundtime", 5.0);

public eventDeath(id){
new iVictim = read_data(2);

if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
g_iToRespawnPremium[iVictim] = 3; //ile sec do respawnu z flaga ?
}
else
{
g_iToRespawn[iVictim] = 10; // ile sec do respawnu ?
}

if(task_exists(iVictim + TASK_RESPAWN)) remove_task(iVictim + TASK_RESPAWN);
set_task(1.0, "taskRespawn", iVictim + TASK_RESPAWN, _, _, "b");
}

public taskRespawn(task_id){


new id = task_id - TASK_RESPAWN;

if(get_user_team(id) == 2 || get_user_team(id) == 1)
if(!is_user_alive(id))
{

g_iToRespawn[id] --;

set_hudmessage(0, 255, 0, 0.42, 0.55, 1, 1.1, 1.1, 1.1, 1.1)
show_hudmessage(id, "Odrodzisz sie za %d, kup sobie Szybki Respawn i odrodz sie w 3s", g_iToRespawn[id]);

if(g_iToRespawn[id] <= 0)
ExecuteHamB(Ham_CS_RoundRespawn, id);
}
if(get_user_team(id) == 2 || get_user_team(id) == 1)
if(!is_user_alive(id))
{

g_iToRespawnPremium[id] --;

set_hudmessage(0, 255, 0, 0.42, 0.55, 1, 1.1, 1.1, 1.1, 1.1)
show_hudmessage(id, "Masz kupiony Szybki Respawn, Odrodzisz sie za %d", g_iToRespawnPremium[id]);

if(g_iToRespawnPremium[id] <= 0)
ExecuteHamB(Ham_CS_RoundRespawn, id);
}
}


public resp(id){
if(get_user_team(id) == 2 || get_user_team(id) == 1)
if(!is_user_alive(id))
{
ExecuteHamB(Ham_CS_RoundRespawn, id);
}

}