public void LoadLevel(string userlevelname) { //clear out current level stuff ClearLevel(); FileLoader leveldata = new FileLoader(Application.persistentDataPath, "UserLevels", "userlevel_" + userlevelname); string lds = leveldata.Read(); Dictionary <string, System.Object> leveldict = Json.Deserialize(lds) as Dictionary <string, System.Object>; for (int i = 0; i < 6; i++) { FileLoader wavedata = new FileLoader(Application.persistentDataPath, "UserLevels", "userwave_" + userlevelname + (i + 1)); string wds = wavedata.Read(); Dictionary <string, System.Object> wavedict = Json.Deserialize(wds) as Dictionary <string, System.Object>; ZonePanelController[] zpanels = frames[i].zonepanels; List <System.Object> enemies = wavedict["enemies"] as List <System.Object>; foreach (System.Object eobj in enemies) { Dictionary <string, System.Object> edict = eobj as Dictionary <string, System.Object>; string efilename = (string)edict["enemyID"]; int zoneID = (int)(long)edict["trackID"]; EnemyTemplateController etc = eic.GetTemplateByName(efilename); zpanels[zoneID - 1].AddNewEntry(etc); } } int bosscode = (int)(long)leveldict["boss"]; btc.SetBossIndex(bosscode); Debug.Log("boss loaded"); GameEvent ge = new GameEvent("wave_editor_changed"); EventManager.Instance().RaiseEvent(ge); }
public void ConfigureFromTemplate(EnemyTemplateController etc) { this.etc = etc; Image img = transform.gameObject.GetComponent<Image> (); Texture2D decal = Resources.Load<Texture2D> ("Sprites/EnemySprites/" + etc.GetImgFileName()); if (decal == null) Debug.Log("decal is null"); img.sprite = UnityEngine.Sprite.Create ( decal, new Rect(0,0,decal.width,decal.height), new Vector2(0.5f,0.5f), 100f); img.color = new Color(img.color.r,img.color.g,img.color.b,0.5f);//.a = 0.5f; //set size stuff RectTransform rt = (RectTransform)transform; //figure out how much to scale it by to fit float xratio = ((float)decal.width)/etc.maxwidth; float yratio = ((float)decal.height)/etc.maxheight; float highestratio; if(xratio >= yratio){ highestratio = xratio; }else{ highestratio = yratio; } float newWidth = ((float)decal.width) / highestratio; float newHeight = ((float)decal.height) / highestratio; Vector3 sizeStuff = new Vector3(newWidth,newHeight,transform.position.z); rt.sizeDelta = sizeStuff; }
public void ConfigureFromTemplate(EnemyTemplateController etc) { this.etc = etc; label = etc.GetEditorColumnName() + " (" + etc.GetPointValue() +")"; //set name Transform nTransform = transform.FindChild("Text"); Text nameText = nTransform.gameObject.GetComponent<Text>(); nameText.text = label; }
public void AttachEnemy(EnemyTemplateController etc) { moving = true; GameObject go = Instantiate (Resources.Load ("Prefabs/DraggableEnemy")) as GameObject; go.transform.SetParent(canvas.transform,false); EnemyDraggableController edc = go.GetComponent<EnemyDraggableController>(); edc.ConfigureFromTemplate(etc); floatingEnemy = edc; //make draggable controller based on etc stats //make floatingEnemy that controller and dispose of the old one if applicable }
public void AttachEnemy(EnemyTemplateController etc) { moving = true; GameObject go = Instantiate(Resources.Load("Prefabs/DraggableEnemy")) as GameObject; go.transform.SetParent(canvas.transform, false); EnemyDraggableController edc = go.GetComponent <EnemyDraggableController>(); edc.ConfigureFromTemplate(etc); floatingEnemy = edc; //make draggable controller based on etc stats //make floatingEnemy that controller and dispose of the old one if applicable }
public void AddNewEntry(EnemyTemplateController etc) { GameObject go = Instantiate(Resources.Load("Prefabs/EnemyListEntry")) as GameObject; EnemyListEntryController elec = go.GetComponent <EnemyListEntryController>(); elec.transform.SetParent(scroll.transform, false); elec.ConfigureFromTemplate(etc); RectTransform rt = (RectTransform)elec.transform; rt.anchoredPosition = new Vector2(rt.anchoredPosition.x, rt.anchoredPosition.y - spacing * enemies.Count); if (enemies.Count == 0) { initialpos = rt.anchoredPosition.y; } enemies.Add(elec); elec.parentZonePanel = this; ResizeScroll(); GameEvent ge = new GameEvent("wave_editor_changed"); EventManager.Instance().RaiseEvent(ge); }
public void ConfigureFromTemplate(EnemyTemplateController etc) { this.etc = etc; Image img = transform.gameObject.GetComponent <Image> (); Texture2D decal = Resources.Load <Texture2D> ("Sprites/EnemySprites/" + etc.GetImgFileName()); if (decal == null) { Debug.Log("decal is null"); } img.sprite = UnityEngine.Sprite.Create( decal, new Rect(0, 0, decal.width, decal.height), new Vector2(0.5f, 0.5f), 100f); img.color = new Color(img.color.r, img.color.g, img.color.b, 0.5f); //.a = 0.5f; //set size stuff RectTransform rt = (RectTransform)transform; //figure out how much to scale it by to fit float xratio = ((float)decal.width) / etc.maxwidth; float yratio = ((float)decal.height) / etc.maxheight; float highestratio; if (xratio >= yratio) { highestratio = xratio; } else { highestratio = yratio; } float newWidth = ((float)decal.width) / highestratio; float newHeight = ((float)decal.height) / highestratio; Vector3 sizeStuff = new Vector3(newWidth, newHeight, transform.position.z); rt.sizeDelta = sizeStuff; }