Moin,
diesen Quellcode
Code:
public del_station(id)
{
new body, index;
if(get_user_aiming(id, index, body) == 0.0) return PLUGIN_HANDLED_MAIN;
log_amx("deleting initiated index: %d", index);
if(index > get_maxplayers())
{
log_amx("deleting entity index: %d", index);
/*
if(pev_valid(index))
{
log_amx("deleting entity");
new num = get_station_num(index);
if(num == -1) return PLUGIN_HANDLED_MAIN;
new class[33];
pev(index, pev_classname, class, 32);
if(equal(class, MEDKITCLASS)) delete_saved_stations(num, 1);
else if(equal(class, RECHARGECLASS)) delete_saved_stations(num, 2);
}
*/
}
return PLUGIN_CONTINUE;
}
kannst Du auf folgendes kürzen
Code:
public del_station(id)
{
new body, index;
if(get_user_aiming(id, index, body) == 0.0) return PLUGIN_HANDLED_MAIN;
log_amx("deleting entity index: %d", index);
new num = get_station_num(index);
if(num == -1) return PLUGIN_HANDLED_MAIN;
new class[33];
pev(index, pev_classname, class, 32);
if(equal(class, MEDKITCLASS)) delete_saved_stations(num, 1);
else if(equal(class, RECHARGECLASS)) delete_saved_stations(num, 2);
return PLUGIN_CONTINUE;
}
das Du Dir eh den Klassennamen holst brauchst Du nicht zu testen ob das Entity > als die max. Spieleranzahl ist ... der Klassenname für Spieler ist "player" ... und somit ungleich Deinem ... dann brauchst Du auch nicht testen ob das Entity gültig ist ... Du hast es ja gerade vom System bekommen ... wenn es doch ungültig sein sollte dann ist die HL1-Engine Mist (okay, anderes Thema
![Mr. Green](images/smilies/mrgreen.gif)
) ... anders wäre es wenn Du es erst im nächsten Frame verarbeitest ... dann kann das Entity wieder ungültig sein
dann fällt mir dazu nur ein das Du die Entity's sehr genau anvisieren musst ... ich habe jetzt nicht getestet ... Du kannst ja alternativ um das angezielte Entity eine Box malen ... dann weist Du zumindest ob es das richtige ist
hand, mogel
__________________