コード例 #1
0
ファイル: FireSource.cs プロジェクト: pabimuri/Barotrauma
        public FireSource(Vector2 worldPosition, Hull spawningHull = null, bool isNetworkMessage = false)
        {
            hull = Hull.FindHull(worldPosition, spawningHull);
            if (hull == null || worldPosition.Y < hull.WorldSurface)
            {
                return;
            }

#if CLIENT
            if (!isNetworkMessage && GameMain.Client != null)
            {
                return;
            }
#endif

            hull.AddFireSource(this);

            position = worldPosition - new Vector2(-5.0f, 5.0f);
            if (hull.Submarine != null)
            {
                submarine = hull.Submarine;
                position -= Submarine.Position;
            }

#if CLIENT
            lightSource = new LightSource(this.position, 50.0f, new Color(1.0f, 0.9f, 0.7f), hull?.Submarine);
#endif

            size = new Vector2(10.0f, 10.0f);
        }
コード例 #2
0
        public FireSource(Vector2 worldPosition, Hull spawningHull = null, bool isNetworkMessage = false)
        {
            hull = Hull.FindHull(worldPosition, spawningHull);
            if (hull == null)
            {
                return;
            }

            if (!isNetworkMessage && GameMain.Client != null)
            {
                return;
            }

            hull.AddFireSource(this);

            Submarine = hull.Submarine;

            this.position = worldPosition - new Vector2(-5.0f, 5.0f) - Submarine.Position;

#if CLIENT
            if (fireSoundBasic == null)
            {
                fireSoundBasic = Sound.Load("Content/Sounds/fire.ogg", false);
                fireSoundLarge = Sound.Load("Content/Sounds/firelarge.ogg", false);
            }

            lightSource = new LightSource(this.position, 50.0f, new Color(1.0f, 0.9f, 0.7f), hull == null ? null : hull.Submarine);
#endif

            size = new Vector2(10.0f, 10.0f);
        }