- 433 名前:名前は開発中のものです。 mailto:sage [2022/09/12(月) 00:32:14.53 ID:62TYiDdQ.net]
- void spawnentitybyallenemy(void vName, float fX, float fY, float fZ)
{ void vEnt; //Entity placeholder. int iType , iValid, iDead, iECnt, iEnt; //Entity counter. int Tx = 0, Ty = 0, Tz = 0, Tdir = 0; void spawned = 0; void self = getlocalvar("self"); iECnt = openborvariant("ent_max"); //Get current entity count. for(iEnt=0; iEnt<iECnt; iEnt++) //Loop entity collection. { vEnt = getentity(iEnt); //Get entity handle. if(vEnt) //Valid handle? { iValid = getentityproperty(vEnt, "exists"); //Get exists confirmation. iDead = getentityproperty(vEnt, "dead"); //Get death status. iType = getentityproperty(vEnt, "type"); //Get type. if(vEnt && iValid && !iDead //Alive? && iType == openborconstant("TYPE_ENEMY")) //Enemy type? { Tx = getentityproperty(vEnt, "x"); Ty = getentityproperty(vEnt, "a"); Tz = getentityproperty(vEnt, "z"); Tdir = getentityproperty(vEnt, "direction"); if ( Tdir == 0 ) { spawned = spawnchildentityforparent(vName, self, (Tx+fX), (Ty+fY), (Tz+fZ), 0); changeentityproperty(spawned, "direction",1); } else { fX = -fX; spawned = spawnchildentityforparent(vName, self, (Tx+fX), (Ty+fY), (Tz+fZ), 0); changeentityproperty(spawned, "direction",0); } } } } } 画面上のHealth 0 以上の全ての敵の座標を取得して、その座標にEntityを出現させるスクリプト 動画のSpecial で全ての敵に物が降って来る演出に使っています。
|

|