pickentity and find type
BlitzMax Forums/MiniB3D Module/pickentity and find type
| ||
Hi, I am trying to convert an blitz3d code to minib3d. I am familiar with b3d for some time, but I just bought bmax, and I have one problem: I want to do a camerapick with the mouse to select an entity. My problem is to find the corresponding entity's type. In b3d I used object/handle to retun my type: ent.scenery=pickobject() ;ponter to type Function pickobject.scenery() local temp temp=CameraPick(cam,MouseX(),MouseY()) If temp<>0 pick.scenery=Object.scenery(EntityName(temp)) If pick <> Null Return pick End If End If End Function But I am clueless about how to do the same in minib3d. I am not sure how to use HandleToObject and HandlefromObject, should I use them? The pickentity function returns a Tentity, but how do I find my respective type? Right now I am using a For...EachIn loop, but just because I couldn't do otherwise. I would appreciate any help. |
| ||
Well, as I couldn't find a better way. I did the following:Global objectlist:TList = New TList type Tscenery field obj:Tentity field name:string end type If MouseHit(1) Local pick:Tentity= CameraPick(cam , MouseX() , MouseY() ) Local temp:Tentity =PickedEntity() If temp:Tentity<>Null Local temp2:Tscenery For temp2:Tscenery=EachIn objectlist:TList If temp2.obj=temp:TEntity 'found it! Exit End If Next end if end if print temp2.name |