and checked as:
EntityCollided(Shot, EnemyType)
Leaving the whole two-object-types-moving-at-once problem to one side for the moment, if that's all you're doing when looking for collisions then it's not enough. In fact it's the wrong command entirely - see my example below (EntityCollided not used once).
Graphics3D 640,480,0,0 SetBuffer BackBuffer() SeedRnd MilliSecs() cam=CreateCamera() PositionEntity cam,0,10,-20 ground=CreateCube() ScaleEntity ground,50,.1,50 EntityType ground,1 sineBase=0 PointEntity cam,ground Type ball Field velocity# Field model End Type ballTemplate=CreateSphere(8) For i=1 To 100 currentBall.ball=New ball currentBall\velocity=-Rnd(.01,.1) currentBall\model=CopyEntity(ballTemplate) EntityColor currentBall\model,Rand(100,255),Rand(100,255),Rand(100,255) PositionEntity currentBall\model,Rnd(-10,10),10,Rnd(-10,10) EntityType currentBall\model,2 Next FreeEntity ballTemplate Collisions 2,1,2,1 While Not KeyDown(1) For currentBall=Each ball TranslateEntity currentBall\model,0,currentBall\velocity,0 currentBall\velocity=currentBall\velocity-.1 Next UpdateWorld For currentBall=Each ball numberOfCollisions=CountCollisions(currentBall\model) If numberOfCollisions>0 For i=1 To numberOfCollisions If GetEntityType(CollisionEntity(currentBall\model,i))=1 currentBall\velocity=1 EndIf Next EndIf Next RenderWorld Flip Wend
As you can see, you have to iterate through all the collisions for each object (of the entitytype that leads in the collisions command), then you can decide what to do based on the entitytype of the collided entity for each one of those collisions.
Edit: Whoops, just noticed jfk EO-11110 totally beat me to most of that and that I'd misread him with my first edit. But you have a working example now.