コード例 #1
0
        public void Execute(Collision collision)
        {
            IEnvironment enviro = (IEnvironment)collision.Collidee;
            IPlayer      player = (IPlayer)collision.Collider;
            var          side   = collision.Side;

            // side is side of block (collidee)

            if (enviro is PortalBlock portal && (portal.State == PortalBlockState.Blue || portal.State == PortalBlockState.Orange))
            {
                PortalUtil.HandlePlayerPortal(portal, player, game.Screen.CurrentRoom);
            }