Açıkçası ben buna biraz farklılık vermek istiyorum. Biraz denedim fakat sürekli yakın yerlerde doğduğumu fark ettim. Mesela dust2 mapinde sürekli t basenin biraz yakınlarında doğuyorum. Buradaki origin ayarını nasıl yapmam gerek?
@Yek'-ta @Taha Demirbaş yardım ederseniz süper olur.
+Bu arada doğduktan sonra olarak ayarladım denemek için. Default spawn da doğuyorum sonradan ışınlıyor. Sonra bunu ayarlarım.
+ Kesinlikle bugta doğdurmuyor. Bazen yukarda doğup aşağı düşüyoz.
Kod: Tümünü seç
#include <amxmodx>
#include <reapi>
#include <hamsandwich>
#include <fakemeta_util>
public plugin_init() {
register_plugin("Spawn", "1.0", "PurposeLess");
RegisterHookChain(RG_CBasePlayer_Spawn, "Event_DeathMsg", 1);
}
public Event_DeathMsg(victim)
{
//new victim = read_data(2);
add_a_fake(victim);
}
public add_a_fake(id)
{
new entity = fm_create_entity("info_target");
new origin[3];
//get_user_origin(entity, origin);
origin[0] = random(999)
origin[1] = random(999)
origin[2] = random(999)
fm_set_user_origin(entity, origin);
//set_entvar(entity, var_origin, origin);
if(!Stuck(entity))
{
//ExecuteHamB(Ham_CS_RoundRespawn, id);
//set_entvar(id, var_origin, origin);
fm_set_user_origin(id, origin);
client_print(id, print_chat, "Araniyordu.");
}
else {
set_task(0.1, "add_a_fake", id);
client_print(id, print_chat, "Araniyor.");
}
}
stock bool:Stuck(id)
{
static Float:origin[3];
get_entvar(id, var_origin, origin);
engfunc(EngFunc_TraceHull, origin, origin, IGNORE_MONSTERS, get_entvar(id, var_flags) & FL_DUCKING ? HULL_HEAD : HULL_HUMAN, 0, 0);
return get_tr2(0, TR_StartSolid) ? true:false;
}