forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Blitz3D (http://forum.boolean.name/forumdisplay.php?f=45)
-   -   NameEntity - Entity does not exist (http://forum.boolean.name/showthread.php?t=12831)

baton4ik 05.07.2010 22:05

NameEntity - Entity does not exist
 
Код:

SetBuffer(BackBuffer())
SeedRnd(MilliSecs())
Graphics3D(0,0,0,1)
;global
Global cam
Global gw=GraphicsWidth()
Global gh=GraphicsHeight()
Global p,g
Global map
;/global

Type properties
        Field entity, e_type, rx,ry,rz,mx,my,mz
End Type

createworld()

Repeat
control()
UpdateWorld
RenderWorld
Text 10,10,CountChildren(map)
Flip       
Until KeyHit(1)
End

Function control()
        If (KeyDown(205)) Or (KeyDown(32)) MoveEntity (cam,1,0,0)
        If (KeyDown(203)) Or (KeyDown(30)) MoveEntity (cam,-1,0,0)
        If (KeyDown(208)) Or (KeyDown(31)) MoveEntity (cam,0,0,-1)
        If (KeyDown(200)) Or (KeyDown(17)) MoveEntity (cam,0,0,1)
        mxs=-MouseXSpeed() : mys=MouseYSpeed()
        TurnEntity(cam,0,mxs,0)
        TurnEntity(cam,mys,0,0)
        MoveMouse(gw/2,gh/2)
End Function

Function createworld()
        map=LoadAnimMesh("ololo.3ds")
        cam=CreateCamera()
        CameraRange(cam,.1,10000)
        SortMapObjects(map)
End Function

Function SortMapObjects(entity)
        name$=EntityName(entity)
        EntityPickMode entity,2
       
        If Instr(name,"p") Then
                PositionEntity cam,EntityX#(entity),EntityY#(entity),EntityZ#(entity)
                HideEntity(entity)
                p=1
        EndIf
               
        If Instr(name,"g") Then
                prop.properties=New properties
                prop\e_type="g"
                prop\rx=Float(Mid(name,2,1))
                prop\ry=Float(Mid(name,3,1))
                prop\rz=Float(Mid(name,4,1))
                prop\mx=Float(Mid(name,5,1))
                prop\my=Float(Mid(name,6,1))
                prop\mz=Float(Mid(name,7,1))
                g=2

        EndIf
       
        For i=0 To CountChildren(entity)-1
                SortMapObjects(GetChild(entity,i))
        Next
End Function

Ругается на NameEntity

impersonalis 05.07.2010 22:08

Ответ: NameEntity - Entity does not exist
 
загруженная через лоаданиммеш не энтити,а некий пивот, нужно получить необходимые чайлды и работать с ними, не только
Код:

name$=EntityName(entity)
,
но и:
Код:

EntityPickMode entity,2
http://forum.boolean.name/showthread.php?t=4535

baton4ik 05.07.2010 22:12

Ответ: NameEntity - Entity does not exist
 
Цитата:

Сообщение от impersonalis (Сообщение 153130)
загруженная через лоаданиммеш не энтити,а некий пивот, нужно получить необходимые чайлды и работать с ними, не только
Код:

name$=EntityName(entity)
,
но и:
Код:

EntityPickMode entity,2
http://forum.boolean.name/showthread.php?t=4535

Это я понимаю. Но какой аналог? Что мне использовать вместо них? Если обратится к объекту напрямую (NameEntity(map)), то всё ОК. Значит, дело в другом

Добавлено: Я понял. Дело не в объекте. Ошибка выскакивает, когда функция применяется к чайлду

baton4ik 05.07.2010 22:35

Ответ: NameEntity - Entity does not exist
 
Тему можно закрыть, я понял в чём дело. В xorse xGetChild(entity,i) - i от 0 до CountChildren(entity)-1. А в блитце от 1 до CountChildren(entity)


Часовой пояс GMT +4, время: 07:54.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot