←  Prośby o modyfikacje silników/klas/perków

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Przerobienie klasy-niewidzialność z nożem

Zablokowany

  • +
  • -
Vanquish - zdjęcie Vanquish 05.02.2011

Chcę aby w tej klasie na nożu mieć niewidzialność.
Może ktoś przerobić? :)

/* Plugin generated by AMXX-Studio */

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

#define DMG_BULLET (1<<1)


new bool:ma_klase[33];

new const nazwa[] = "Nozownik";
new const opis[] = "Natychmiastowe zabicie z noza(PPM)";
new const bronie = 0;
new const zdrowie = 50;
new const kondycja = 76;
new const inteligencja = 10;
new const wytrzymalosc = 3;

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)
{
        if(!(get_user_flags(id) & ADMIN_LEVEL_H)) 
       {
        ColorChat(id, RED, "[Nozownik] Nie masz uprawnien, aby korzystac z tej klasy. "); 
        return COD_STOP;
}
        
                ColorChat(id, RED, "[Nozownik] Klasa premium ustawiona.") 
                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_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
		cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
		
	return HAM_IGNORED;
}
Odpowiedz

  • +
  • -
sharkowy - zdjęcie sharkowy 05.02.2011

/* Plugin generated by AMXX-Studio */

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

#define DMG_BULLET (1<<1)


new bool:ma_klase[33];

new const nazwa[] = "Nozownik";
new const opis[] = "Natychmiastowe zabicie z noza(PPM)";
new const bronie = 0;
new const zdrowie = 50;
new const kondycja = 76;
new const inteligencja = 10;
new const wytrzymalosc = 3;

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");
register_event("CurWeapon","CurWeapon","be", "1=1");
}

public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
ColorChat(id, RED, "[Nozownik] Nie masz uprawnien, aby korzystac z tej klasy. ");
return COD_STOP;
}

ColorChat(id, RED, "[Nozownik] Klasa premium ustawiona.")
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_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;

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

if(get_user_weapon(id) != CSW_KNIFE)
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
else
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);

}



Sprawdź to.
Odpowiedz

  • +
  • -
Vanquish - zdjęcie Vanquish 05.02.2011

Niestety, kompilator odpowiedział mi takim czymś:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

codclass_nozownik.sma(40) : warning 217: loose indentation
codclass_nozownik.sma(60) : warning 225: unreachable code
codclass_nozownik.sma(60) : warning 217: loose indentation
codclass_nozownik.sma(60) : error 029: invalid expression, assumed zero
codclass_nozownik.sma(60) : error 017: undefined symbol "CurWeapon"
codclass_nozownik.sma(62) : error 017: undefined symbol "id"
codclass_nozownik.sma(65) : error 017: undefined symbol "id"
codclass_nozownik.sma(66) : error 017: undefined symbol "id"
codclass_nozownik.sma(66) : warning 217: loose indentation
codclass_nozownik.sma(66) : warning 215: expression has no effect
codclass_nozownik.sma(66) : warning 215: expression has no effect
codclass_nozownik.sma(66) : warning 215: expression has no effect
codclass_nozownik.sma(66) : warning 215: expression has no effect
codclass_nozownik.sma(66) : warning 215: expression has no effect
codclass_nozownik.sma(66) : warning 215: expression has no effect
codclass_nozownik.sma(66) : error 001: expected token: ";", but found ")"
codclass_nozownik.sma(66) : error 029: invalid expression, assumed zero
codclass_nozownik.sma(66) : fatal error 107: too many error messages on one line

Compilation aborted.
8 Errors.
Odpowiedz

  • +
  • -
sharkowy - zdjęcie sharkowy 05.02.2011

Mój bład hehe ;P zobacz to.

/* Plugin generated by AMXX-Studio */

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

#define DMG_BULLET (1<<1)


new bool:ma_klase[33];

new const nazwa[] = "Nozownik";
new const opis[] = "Natychmiastowe zabicie z noza(PPM)";
new const bronie = 0;
new const zdrowie = 50;
new const kondycja = 76;
new const inteligencja = 10;
new const wytrzymalosc = 3;

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");
register_event("CurWeapon","CurWeapon","be", "1=1");
}

public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
ColorChat(id, RED, "[Nozownik] Nie masz uprawnien, aby korzystac z tej klasy. ");
return COD_STOP;
}

ColorChat(id, RED, "[Nozownik] Klasa premium ustawiona.")
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_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}

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

if(get_user_weapon(id) != CSW_KNIFE)
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
else
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);

}
Odpowiedz

  • +
  • -
Vanquish - zdjęcie Vanquish 05.02.2011

Trochę dziwne bo dostaje jeszcze glocka i na nim jest niewidzialność a no nożu nie ma...
Odpowiedz

  • +
  • -
sharkowy - zdjęcie sharkowy 05.02.2011

/* Plugin generated by AMXX-Studio */

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

#define DMG_BULLET (1<<1)


new bool:ma_klase[33];

new const nazwa[] = "Nozownik";
new const opis[] = "Natychmiastowe zabicie z noza(PPM)";
new const bronie = 1<<CSW_KNIFE;
new const zdrowie = 50;
new const kondycja = 76;
new const inteligencja = 10;
new const wytrzymalosc = 3;

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");
register_event("CurWeapon","CurWeapon","be", "1=1");
}

public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
ColorChat(id, RED, "[Nozownik] Nie masz uprawnien, aby korzystac z tej klasy. ");
return COD_STOP;
}

ColorChat(id, RED, "[Nozownik] Klasa premium ustawiona.")
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_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}

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

if(get_user_weapon(id) != CSW_KNIFE)
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
else
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);

}
Odpowiedz

  • +
  • -
Goliath - zdjęcie Goliath 05.02.2011

Mała pomyłka ;) :
public CurWeapon(id)
{
        if(!ma_klase[id])
                return PLUGIN_CONTINUE; 
        
        if(get_user_weapon(id) == CSW_KNIFE)
                set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
        else
                set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
        
}
Odpowiedz

  • +
  • -
Vanquish - zdjęcie Vanquish 06.02.2011

Ok + leci. czy można trochę zmniejszyć niewidzalność, tak jak jest w BF2 modzie, taki lekki prześwit przezroczystości :D ?
Można to ustawić w tych linijkach?
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);
else
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);

I jeszcze jedno - cały czas jest pistolet glock w ekwipunku - nie da się jakoś tego zlikwidować? :D
Odpowiedz

  • +
  • -
sharkowy - zdjęcie sharkowy 06.02.2011

set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 5);


Cyfrę 5 zmień na dowolną w zakresie od 1 do 255, im bliżej 255 tym bardziej widzialny. Zmień sobie na np 35 to będzie taki prześwit.

Tu masz gotowiec, będzie zabierał glock/usp.
/* Plugin generated by AMXX-Studio */

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

#define DMG_BULLET (1<<1)


new bool:ma_klase[33];

new const nazwa[] = "Nozownik";
new const opis[] = "Natychmiastowe zabicie z noza(PPM)";
new const bronie = 1<<CSW_KNIFE;
new const zdrowie = 50;
new const kondycja = 76;
new const inteligencja = 10;
new const wytrzymalosc = 3;

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");
register_event("CurWeapon","CurWeapon","be", "1=1");
}

public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H))
{
ColorChat(id, RED, "[Nozownik] Nie masz uprawnien, aby korzystac z tej klasy. ");
return COD_STOP;
}

ColorChat(id, RED, "[Nozownik] Klasa premium ustawiona.")
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_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}

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

if(get_user_weapon(id) == CSW_KNIFE)
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 35);
else
set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);

if(ma_klase[id] && read_data(2) != CSW_KNIFE)
{
set_task(0.1 ,"ma" ,id)
}
}

public ma(id)
{
strip_user_weapons(id);
give_item(id, "weapon_knife");
}




@Goliath, fakt dzięki za poprawkę :P
Użytkownik RPK. Shark edytował ten post 06.02.2011 16:48
Odpowiedz
Zablokowany