Exemplo n.º 1
0
        data FragmentShader(VertexOut vertex, Field <data> Select, Field <data> Data, Field <unit> Units, Field <corpse> Corpses, Field <TeamTuple> AntiMagic,
                            [UnitDistribution.Vals] float distribution, [Team.Vals] float AntiMagicTeam)
        {
            data select = Select[Here];
            data here   = Data[Here];

            TeamTuple antimagic = AntiMagic[Here];

            if (antimagic.TeamOne > _0 && AntiMagicTeam != Team.One)
            {
                return(data.Nothing);
            }
            if (antimagic.TeamTwo > _0 && AntiMagicTeam != Team.Two)
            {
                return(data.Nothing);
            }
            if (antimagic.TeamThree > _0 && AntiMagicTeam != Team.Three)
            {
                return(data.Nothing);
            }
            if (antimagic.TeamFour > _0 && AntiMagicTeam != Team.Four)
            {
                return(data.Nothing);
            }

            if (Something(select) && !Something(here))
            {
                if (UnitDistribution.Contains(distribution, vertex.TexCoords * Select.Size, Corpses))
                {
                    return(select);
                }
            }

            return(data.Nothing);
        }
Exemplo n.º 2
0
        void MapEditorUiText()
        {
            if (MapEditor)
            {
                if (MapEditorActive)
                {
                    string s = "Map Editor, Paused\nPlayer " + MyPlayerNumber;
                    if (CurUserMode == UserMode.Painting)
                    {
                        if (TileUserIsPlacing != TileType.None)
                        {
                            s += "\nTile: " + TileType.Name(TileUserIsPlacing);
                        }

                        if (UnitUserIsPlacing != UnitType.None)
                        {
                            s += "\nUnit: " + UnitType.Name(UnitUserIsPlacing) + ", " + UnitDistribution.Name(UnitPlaceStyle);
                        }
                    }

                    Render.DrawText(s, vec(0, 200), 1);
                }
                else
                {
                    Render.DrawText("Map Editor, Playing", vec(0, 200), 1);
                }
            }
        }