コード例 #1
0
    public virtual void Init(DungeonUnity dungeonUnity, DungeonEntity entity)
    {
        this.dungeonUnity = dungeonUnity;
        this.entity       = entity;

        trans.position = dungeonUnity.GetWorldPosition(entity.Position);
        trans.rotation = dungeonUnity.GetWorldRotation(entity.Rotation);
    }
コード例 #2
0
    public DungeonEventHandlerUnity CreateEventHandler(DungeonUnity dungeon, DungeonEvent dungeonEvent)
    {
        switch (dungeonEvent.type)
        {
        case DungeonEventType.EntityMoved:
            return(new DungeonEventHandlerEntityMoved(dungeon, (DungeonEventEntityMoved)dungeonEvent));

        case DungeonEventType.EntityRotated:
            return(new DungeonEventHandlerEntityRotated(dungeon, (DungeonEventEntityRotated)dungeonEvent));
        }

        return(null);
    }
コード例 #3
0
    public void Init(DungeonUnity dungeonUnity, DungeonVector2 position, DungeonTile tile)
    {
        this.tile         = tile;
        this.position     = position;
        this.dungeonUnity = dungeonUnity;

        trans.position = dungeonUnity.GetWorldPosition(position);
        trans.rotation = Quaternion.identity;

        floor     = AddSide(tile.floor, DungeonTileSideType.Floor);
        ceiling   = AddSide(tile.ceiling, DungeonTileSideType.Ceiling);
        wallNorth = AddSide(tile.wallNorth, DungeonTileSideType.WallNorth);
        wallSouth = AddSide(tile.wallSouth, DungeonTileSideType.WallSouth);
        wallEast  = AddSide(tile.wallEast, DungeonTileSideType.WallEast);
        wallWest  = AddSide(tile.wallWest, DungeonTileSideType.WallWest);
    }
コード例 #4
0
    public void Clear()
    {
        if (!dungeonUnity)
        {
            return;
        }

        if (floor)
        {
            dungeonUnity.tilesSideFactory.ReturnSide(floor);
            floor = null;
        }

        if (ceiling)
        {
            dungeonUnity.tilesSideFactory.ReturnSide(ceiling);
            ceiling = null;
        }

        if (wallNorth)
        {
            dungeonUnity.tilesSideFactory.ReturnSide(wallNorth);
            wallNorth = null;
        }

        if (wallSouth)
        {
            dungeonUnity.tilesSideFactory.ReturnSide(wallSouth);
            wallSouth = null;
        }

        if (wallEast)
        {
            dungeonUnity.tilesSideFactory.ReturnSide(wallEast);
            wallEast = null;
        }

        if (wallWest)
        {
            dungeonUnity.tilesSideFactory.ReturnSide(wallWest);
            wallWest = null;
        }

        dungeonUnity = null;
    }
コード例 #5
0
 public DungeonEventHandlerEntityRotated(DungeonUnity dungeon, DungeonEventEntityRotated dungeonEvent)
 {
     entity     = dungeon.GetEntityUnity(dungeonEvent.entity);
     rotateFrom = dungeon.GetWorldRotation(dungeonEvent.from);
     rotateTo   = dungeon.GetWorldRotation(dungeonEvent.to);
 }
コード例 #6
0
    public override void Init(DungeonUnity dungeonUnity, DungeonEntity entity)
    {
        base.Init(dungeonUnity, entity);

        avatar = (DungeonEntityAvatar)entity;
    }
コード例 #7
0
 public DungeonEventHandlerEntityMoved(DungeonUnity dungeon, DungeonEventEntityMoved dungeonEvent)
 {
     entity   = dungeon.GetEntityUnity(dungeonEvent.entity);
     moveFrom = dungeon.GetWorldPosition(dungeonEvent.from);
     moveTo   = dungeon.GetWorldPosition(dungeonEvent.to);
 }