void main()
{//Script for item
void self = getlocalvar("self");
void target = getlocalvar("damagetaker");
char Item = getentityproperty(self,"defaultname");
int index = getentityproperty(target,"playerindex");
int score = getplayerproperty(index, "score");
void Spawn;
if(Item == "PoisonOrb"){
killer("Spdwn"+target);
Spawn = spawnbind("Spdwn", target, 0, 0, 0, 0, 0);
changeentityproperty(Spawn, "name", "spdwn"+target);
changeentityproperty(Spawn, "parent", target);
}else if(Item == "LightningOrb"){
killer("Spup"+target);
Spawn = spawnbind("Spup", target, 0, 0, 0, 0, 0);
changeentityproperty(Spawn, "name", "Spup"+target);
changeentityproperty(Spawn, "parent", target);
}else if(Item == "IceOrb"){
int eTime = openborvariant("elapsed_time");
changeentityproperty(target, "invincible", 1); // Gives invincibility
changeentityproperty(target, "invinctime", eTime + 1000); // for about 10 seconds
changeentityproperty(target, "blink", 1);
}else if(Item == "Apple" || Item == "Bread"){ // Eat Food
killer("Food"+target);
Spawn = spawnbind("Food", target, 0, 0, 0, 0, 0);
changeentityproperty(Spawn, "name", "Food"+target);
changeentityproperty(Spawn, "parent", target);
}
changeplayerproperty(index, "score", score-1);
killentity(self);
}
void spawn01(void vName, float fX, float fY, float fZ)
{
//spawn01 (Generic spawner)
//Damon Vaughn Caskey
//07/06/2007
//
//Spawns entity next to caller.
//
//vName: Model name of entity to be spawned in.
//fX: X location
//fY: Y location
//fZ: Z location
void self = getlocalvar("self"); //Get calling entity.
void vSpawn; //Spawn object.
clearspawnentry(); //Clear current spawn entry.
setspawnentry("name", vName); //Acquire spawn entity by name.
vSpawn = spawn(); //Spawn in entity
changeentityproperty(vSpawn, "position", fX, fZ, fY); //Set spawn location.
return vSpawn; //Return spawn
}
void spawnbind(void Name, void Target, float dx, float dy, float dz, int Dir, int Flag)
{ // Spawn entity and bind it
void self = getlocalvar("self");
void Spawn;
Spawn = spawn01(Name, dx, dy, dz);
bindentity(Spawn, Target, dx, dz, dy, Dir, Flag);
return Spawn;
}
void killer(void vName)
{
void vEntity; //Target entity placeholder.
int iEntity; //Entity enumeration holder.
char iName; //Entity Name.
int iMax = openborvariant("count_entities"); //Entity count.
//Enumerate and loop through entity collection.
for(iEntity=0; iEntity<iMax; iEntity++){
vEntity = getentity(iEntity); //Get target entity from current loop.
iName = getentityproperty(vEntity, "name"); //Get target's default name
//Same default name as defined?
if(iName == vName){
killentity(vEntity);
}
}
}