public override void Awake() { int x = Config.ScreenWidth / 2 - 10; int y = Config.ScreenHeight * 7 / 10; var l = UIFactroy.CreateLabel(new Vector2(x - 4, y + 2), "使用鼠标或键盘,选择要进入的游戏场景"); Button a = UIFactroy.CreateButton(new Vector2(x, y + 1), "[1.盒子射击demo]", StartGameTPS); Button b = UIFactroy.CreateButton(new Vector2(x, y), "[2.战棋寻路Demo]", StartGameSRPG); }
public override void Awake() { rayCastTargetCom = AddComponent <RayCastTarget>(); rayCastTargetCom.OnMoveInEvent += () => { Select(true); }; rayCastTargetCom.OnMoveOutEvent += () => { Select(false); }; //添加边框对象 BoxDrawing = UIFactroy.CreateBoxDrawingRect(Position - new Vector2(1, 1), 2, 25); BoxDrawing.Parent = GameObject; Select(false); //添加Label对象 List <Vector2> posList = new List <Vector2>(); for (int i = 0; i < 25; i++) { posList.Add(new Vector2(i, 0)); } for (int i = 18; i < 25; i++) { posList.Add(new Vector2(i, -1)); } GameObject labelObj = new GameObject("StateLabel", "UI", GameObject, new Vector2(0, 1), posList); labelCom = labelObj.AddComponent <Renderer>(); labelCom.Init(RendererMode.UI, (int)Layer.Label); //添加血条对象 progressBar = ProgressBarChar.Create(length: 18); progressBar.GameObject.Parent = GameObject; progressBar.LocalPosition = new Vector2(0, 0); }
/// <summary> /// 创建一个测试用字符串 /// </summary> public static Renderer CreateTestLable(Vector2 pos) { string str = "欢迎使用DestroyEngine"; int length = CharUtils.GetStringWidth(str); Renderer renderer = UIFactroy.CreateLabel(pos, "", length / 2 + 1); renderer.Rendering(str, Color.Cyan, Color.Blue); return(renderer); }
public override void Start() { UIFactroy.CreateLabel(new Vector2Int(7, 10), "jkl今天天气真不错", 5); TextBox textBox = UIFactroy.CreateTextBox(new Vector2Int(3, -7), 10, 10); textBox.SetText("TransForm", 1); textBox.SetText("TransForm124556", 3); textBox.Labels[2].GetComponent <Renderer>().Material = new Material(EngineColor.Green, EngineColor.Yellow); }
/// <summary> /// 创建一个测试用ListBox /// </summary> public static ListBox CreateTestListBox(Vector2 pos) { ListBox textBox = UIFactroy.CreateListBox(pos, 5, 10); for (int i = 0; i < 10; i++) { textBox.CreateLabelItem(i.ToString() + "哈哈"); } return(textBox); }
/// <summary> /// 创建一个文本区域,可以设置是否包含文本框 /// </summary> public static Renderer CreateTextAera(int width, int height, bool hasRect) { GameObject gameObject = new GameObject(posList: Utils.CreateRecMesh(width, height)); var renderCom = gameObject.AddComponent <Renderer>(); if (hasRect) { var box = UIFactroy.CreateBoxDrawingRect(new Vector2(-1, -1), height, width); box.Parent = gameObject; } return(renderCom); }
/// <summary> /// 创建一个测试用文本框 /// </summary> public static TextBox CreateTestTextBox(Vector2 pos) { TextBox textBox = UIFactroy.CreateTextBox(pos, 5, 10); textBox.SetText("Destroy TextBox", 1); Renderer renderer = textBox.Labels[0].GetComponent <Renderer>(); renderer.SetForeColor(Color.Green); textBox.SetText("1.这是一个文本框", 2); textBox.SetText("2.文本框没有碰撞", 3); textBox.SetText("3.不会随摄像机移动", 4); textBox.SetText("4.推箱子玩吧", 5); return(textBox); }
public override void Awake() { //添加边框对象 BoxDrawing = UIFactroy.CreateBoxDrawingRect(Position - new Vector2(1, 1), 2, 6); BoxDrawing.Parent = GameObject; //上面的label 长度6 表示技能名字 var obj = new GameObject("StateLabel", "UI", GameObject, new Vector2(0, 1), Utils.CreateLineMesh(6)); labelUp = obj.AddComponent <Renderer>(); labelUp.Init(RendererMode.UI, (int)Layer.Label); //下面的label长度6 表示技能cd obj = new GameObject("CDLabel", "UI", GameObject, new Vector2(0, 0), Utils.CreateLineMesh(6)); labelDown = obj.AddComponent <Renderer>(); labelDown.Init(RendererMode.UI, (int)Layer.Label); }
public override void Awake() { //这个类是单例且不会随场景销毁的 Instance = this; helpTextBox = UIFactroy.CreateTextBox(new Vector2(Config.ScreenWidth - 12, 0), 5, 10); helpTextBox.GameObject.Parent = GameObject; var drawing = UIFactroy.CreateBoxDrawingRect(new Vector2(Config.ScreenWidth - 12, 6), 1, 10); drawing.Parent = GameObject; returnBtn = UIFactroy.CreateButton(new Vector2(Config.ScreenWidth - 11, 7), "回到主界面", Return, 10); returnBtn.GameObject.Parent = GameObject; InitText(); SceneManager.DontDestroyOnLoad(GameObject); }
public override void Awake() { //添加边框对象 BoxDrawing = UIFactroy.CreateBoxDrawingRect(Position - new Vector2(1, 1), 4, 24); BoxDrawing.Parent = GameObject; label1 = Utils.CreateLabel(24, parent: GameObject, localPosition: new Vector2(0, 3)); label2 = Utils.CreateLabel(24, parent: GameObject, localPosition: new Vector2(0, 2)); labelHP = Utils.CreateLabel(8, parent: GameObject, localPosition: new Vector2(0, 1)); labelMP = Utils.CreateLabel(8, parent: GameObject, localPosition: new Vector2(0, 0)); hpSlider = ProgressBarChar.Create(16); hpSlider.GameObject.Parent = GameObject; hpSlider.LocalPosition = new Vector2(8, 1); mpSlider = ProgressBarChar.Create(16); mpSlider.GameObject.Parent = GameObject; mpSlider.LocalPosition = new Vector2(8, 0); mpSlider.fullColor = Color.Blue; mpSlider.enableColor = false; }
/// <summary> /// 在场景中创建对象 /// </summary> public override void OnStart() { //主角位于原点 GameObject player = TPSFactroy.CreateStandardPlayer("吊", new Vector2(0, 0)); GameObject.CreateWith <CameraController>().followTrans = player; player.AddComponent <Shooter>(); //创建迷宫地图 位于第三象限 var maze = MazeGeneration.GetMaze(21, 21, new RenderPoint("■", Color.White, Config.DefaultBackColor, (int)Layer.Environment)); maze.Position = new Vector2(-25, -25); //俄罗斯方块位于第一象限 for (int x = 5; x < 20; x += 5) { for (int y = 5; y < 20; y += 5) { TPSFactroy.CreateBox(new Vector2(x, y)); } } //系统指示器 位于右上角 SystemUIFactroy.GetSystemInspector(); //左侧的三个UI组件 TPSFactroy.CreateTestLable(new Vector2(0, 26)); ListBox gunBox = UIFactroy.CreateListBox(new Vector2(0, 15), 5, 10); gunBox.AddComponent <GunBox>(); var gunUI = UIFactroy.CreateTextBox(new Vector2(0, 21), 3, 10); gunUI.AddComponent <GunUI>(); }
public override void Awake() { //添加边框对象 BoxDrawing = UIFactroy.CreateBoxDrawingRect(Position - new Vector2(1, 1), 2, 30); BoxDrawing.Parent = GameObject; //左上的的label 长度20 表示正在释放的技能的名字和施法时间等 var obj = new GameObject("StateLabel", "UI", GameObject, new Vector2(0, 1), Utils.CreateLineMesh(20)); labelUp = obj.AddComponent <Renderer>(); labelUp.Init(RendererMode.UI, (int)Layer.Label); //上面的条表示公cd progressCommonCD = ProgressBarChar.Create(10, fillChar: '<'); progressCommonCD.GameObject.Parent = GameObject; progressCommonCD.LocalPosition = new Vector2(20, 1); progressCommonCD.emptyColor = Color.Green; progressCommonCD.fullColor = Color.Red; //下面的用实心进度条 表示施法条 progressCasting = ProgressBar.Create(30); progressCasting.GameObject.Parent = GameObject; progressCasting.LocalPosition = new Vector2(0, 0); }
public override void OnStart() { UIFactroy.CreateButton(new Vector2(20, 23), "开始教学关卡", () => { GameMode.Instance.Init(); LoadScene(); }); UIFactroy.CreateButton(new Vector2(20, 22), "开始关卡简单(0)", () => { GameMode.Instance.InitGame(0); LoadScene(); }); UIFactroy.CreateButton(new Vector2(20, 21), "开始关卡中等(5)", () => { GameMode.Instance.InitGame(5); LoadScene(); }); UIFactroy.CreateButton(new Vector2(20, 20), "开始关卡理论极限(10)", () => { GameMode.Instance.InitGame(10); LoadScene(); }); UIFactroy.CreateButton(new Vector2(20, 19), "开始关卡测试用(100)", () => { GameMode.Instance.InitGame(100); LoadScene(); }); var text = Utils.CreateTextAera(20, 3, true); text.Position = new Vector2(10, 14); text.Rendering("欢迎来到本游戏,本游戏目前只有一个试玩关卡. 建议游玩简单或者中等难度,后面两个仅供测试用(大概是过不了关的)"); text = Utils.CreateTextAera(20, 5, true); text.Position = new Vector2(10, 8); text.Rendering("操作说明,鼠标指向为治疗目标,123为单体治疗技能,45为群体治疗技能。(推荐多用134技能,应急使用25技能,并注意自己的蓝条不要oom)"); }