// Use this for initialization new void Start() { area = GameObject.Find("Mall").GetComponent <AreaScript>(); base.Start(); isSatisfied = false; speechBubble.SetActive(false); }
public override void Initialize() { base.Initialize(); areaScript = GetComponentInParent <AreaScript>(); shooter = transform.Find("Gun").Find("Emmiter").GetComponent <Shooter>(); rb = GetComponent <Rigidbody>(); }
public Area(GameObject S) { A = S; AreaScript sk = S.GetComponent <AreaScript> (); width = sk.width; height = sk.height; Grid = sk.Grid; minX = A.GetComponent <Collider2D>().bounds.min.x; maxY = A.GetComponent <Collider2D>().bounds.max.y; minY = A.GetComponent <Collider2D>().bounds.min.y; maxX = A.GetComponent <Collider2D>().bounds.max.x; DoorCount = A.transform.GetChild(0).childCount - 2; OperableCount = A.transform.childCount - 1; Doors = new Door[DoorCount]; operables = new Operable[OperableCount]; for (int i = 0; i < DoorCount; i++) { Doors [i] = new Door(A.transform.GetChild(0).GetChild(i + 2).gameObject); } for (int i = 0; i < OperableCount; i++) { operables [i] = new Operable(A.transform.GetChild(i + 1).gameObject); } }
public Vector3 GetCrowdedLocation() { AreaScript crowdedArea = this.GetCrowdedArea(); Vector3 position = crowdedArea.transform.position; Vector3 vector = new Vector3(0f, 0f, 0f); float num = 0f; foreach (StudentScript studentScript in crowdedArea.Students) { vector += new Vector3(studentScript.transform.position.x, 0f, studentScript.transform.position.z); num += 1f; } vector /= num; int num2; if (position.y >= 0f && position.y < 4f) { num2 = 0; } else if (position.y >= 4f && position.y < 8f) { num2 = 4; } else if (position.y >= 8f && position.y < 12f) { num2 = 8; } else { num2 = 12; } return(new Vector3(vector.x, (float)num2, vector.z)); }
void OnSceneGUI() { AreaScript areaScript = (AreaScript)target; for (int i = 0; i < areaScript.Areas.Count; i++) { float width = areaScript.Areas[i].width; float height = areaScript.Areas[i].height; GUIStyle style = new GUIStyle(); style.normal.textColor = areaScript.properties[i].AreaColor; style.fontSize = 20; Handles.color = areaScript.properties[i].AreaColor; Vector3 pos = new Vector3(areaScript.Areas[i].x, 0, areaScript.Areas[i].y); Vector3[] verts = new Vector3[] { new Vector3(areaScript.Areas[i].xMin, pos.y, areaScript.Areas[i].yMin), new Vector3(areaScript.Areas[i].xMax, pos.y, areaScript.Areas[i].yMin), new Vector3(areaScript.Areas[i].xMax, pos.y, areaScript.Areas[i].yMax), new Vector3(areaScript.Areas[i].xMin, pos.y, areaScript.Areas[i].yMax) }; Handles.DrawSolidRectangleWithOutline(verts, new Color(1, 1, 1, 0.2f), new Color(0, 0, 0, 1)); Handles.color = Color.white; float x = width; float y = height; Vector3 scale = new Vector3(width, 0, height); Vector3 handlePos = pos + scale / 2; scale = Handles.ScaleHandle(scale, handlePos, Quaternion.AngleAxis(360, Vector3.left), HandleUtility.GetHandleSize(handlePos)); Handles.color = Color.green; pos = Handles.PositionHandle(pos, Quaternion.identity); Handles.color = Color.blue; if (areaScript.properties[i].MaxSpawn < 0) { Handles.Label(pos + Vector3.up * 4 + new Vector3(1, 0, 1), "Area : " + i + "\n" + "Type : " + areaScript.properties[i].SpawnType.ToString() + "\n" + "Max Spawn : no limit" + "\n" + "Quest Type : " + areaScript.properties[i].QuestType, style); } else { Handles.Label(pos + Vector3.up * 4 + new Vector3(1, 0, 1), "Area : " + i + "\n" + "Type : " + areaScript.properties[i].SpawnType.ToString() + "\n" + "Max Spawn : " + areaScript.properties[i].MaxSpawn + "\n" + "Quest Type : " + areaScript.properties[i].QuestType, style); } areaScript.Areas[i] = new Rect(pos.x, pos.z, scale.x, scale.z); } }
public GameManagerModel CheckIfAreaIsAvailable(GameManagerModel model, AreaScript areaScript) { if (areaScript.Model.Type != SignType.DEFAULT) { return(model); } areaScript.UpdateSign(SignType.COMPUTER_SIGN); model.ComputerTurnCompleted = true; return(model); }
public GameManagerModel CheckForAreaObject(GameManagerModel model, GameObject collision) { if (collision.layer != LayerMask.NameToLayer("Area")) { return(model); } AreaScript script = collision.GetComponent <AreaScript>(); return(CheckAreaSignType(model, script)); }
public GameManagerModel CheckAreaSignType(GameManagerModel model, AreaScript script) { if (script.Model.Type != SignType.DEFAULT) { return(model); } model.PlayerTurnCompleted = true; script.UpdateSign(SignType.PLAYER_SIGN); return(model); }
public GameManagerModel BlockPlayerRow(GameManagerModel model, WinningRowModel row) { AreaScript area1 = model.Areas.Find(x => x.transform.position == row.FirstPos).GetComponent <AreaScript>(); AreaScript area2 = model.Areas.Find(x => x.transform.position == row.SecondPos).GetComponent <AreaScript>(); AreaScript area3 = model.Areas.Find(x => x.transform.position == row.ThirdPos).GetComponent <AreaScript>(); model = CheckIfAreaIsAvailable(model, area1); model = CheckIfAreaIsAvailable(model, area2); model = CheckIfAreaIsAvailable(model, area3); return(model); }
// Update is called once per frame void Update() { playerHost = player.hostChar; for (int i = 0; i < areas.Count; i++) { if (areaNum == i) { if (i == 0 || i == 7) { if (i == 7) { text.text = "Sleep..."; } if (i == 0) { int gems = 0; for (int a = 1; a < areas.Count; a++) { if (!areas[a].subArea) { gems += areas[a].gemTot; } text.text = "Total Gems: " + totalGems; } totalGems = gems; } } else { totalGems = areas[i].gemTot; text.text = area.name + " Gems: " + totalGems; } areas[i].gameObject.SetActive(true); area = areas[i].gameObject.GetComponent <AreaScript>(); if (player.hostChar != null) { playerHost.transform.parent = area.gameObject.transform.Find("Characters"); } cameraScript.cameraOptions.maxCameraBoundaries = area.maxCamera; cameraScript.cameraOptions.minCameraBoundaries = area.minCamera; } else { areas[i].gameObject.SetActive(false); } } }
public AreaScript GetCrowdedArea() { AreaScript result = null; float num = 0f; foreach (AreaScript areaScript in this._definedAreas) { int population = areaScript.Population; if ((float)population > num) { num = (float)population; result = areaScript; } } return(result); }
public static string GetUnderArea(Vector3 pos) { string areaName = null; RaycastHit rh = new RaycastHit(); bool isHit = SongeUtil.GetPointOnGround(pos, ref rh); if (isHit) { Transform tr = rh.transform; AreaScript areaSc = tr.GetComponentInParent <AreaScript>(); if (areaSc != null) { areaName = areaSc.AreaName; } } return(areaName); }
void Awake() { var staticProtectObjects = transform.FindChild("StaticProtectObjects"); if (staticProtectObjects != null) { QuestTarget = staticProtectObjects.GetChild(0); } OM = new ObjectiveManager(); areas = transform.GetComponent <AreaScript>(); StaticIngameData.mapManager = this; //This functions gets all spawn areas in the map in a dictionary sorted based on monster ID sortedAreas = areas.GetSortedAreas(); sortedMaxSpawn = areas.GetSortedMaxSpawn(); }
// Update is called once per frame public void shoot() { areaScript = transform.parent.parent.GetComponentInParent <AreaScript>(); agentScript = transform.parent.parent.GetComponent <AgentScript>(); if (Physics.Raycast(transform.position, transform.forward, out RaycastHit hit, 15)) { GameObject shot = hit.transform.gameObject; if (shot.CompareTag("enemy")) { areaScript.DestroyEnemy(shot); Debug.Log("Hit Enemy"); } else { agentScript.AddReward(-0.0002f); } }
public GameManagerModel MarkRandomArea(GameManagerModel model) { if (model.ComputerTurnCompleted) { return(model); } int areaCount = 0; while (model.ComputerTurnCompleted == false && areaCount < model.Areas.Count) { int areaIndex = Random.Range(0, model.Areas.Count); AreaScript areaScript = model.Areas[areaIndex].GetComponent <AreaScript>(); model = CheckIfAreaIsAvailable(model, areaScript); areaCount += 1; } return(model); }
// Update is called once per frame void Update() { ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, out hit) && hit.collider.gameObject.tag == "Area") //Ha az egér egy terület felett van... { if (itsMyFirstTimeSenpai) //Please be gentle { myScript = hit.collider.gameObject.GetComponent <AreaScript>(); //myScript az azé a területé, amelyik fölött az egér van. if (myScript.id != activeArea) { myScript.brigthenColor(feher); //Az egér alatti területet szinezzük fehérre. } needTurningBack = true; //Jelöljük hogy szükségünk lesz a terület visszaszínezésére feketére amikor levisszük róla az egeret. itsMyFirstTimeSenpai = false; //( ͡° ͜ʖ ͡°) } if (Input.GetMouseButton(0)) //Ha rákattintunk egy területre, aktívvá tesszük. { if (activeArea != 100) //Mielőtt aktív területet váltunk, szinezzük vissza az előző aktív terület szomszédait. Ezt akkor ne tegyük meg ha ez az első aktív terület. { setNeighbourColors(fekete); Areas[activeArea - 1].GetComponent <AreaScript>().changeColorTo(fekete); } activeArea = myScript.getId(); //Felvesszük az aktív terület számát setNeighbourColors(feher); //A szomszédok színeit fehérre váltjuk. myScript.changeColorTo(aktiv); //Az aktív területet szinezzük accordingly needTurningBack = false; //És ne szinezzük vissza ha lemegy az egér. } } else { itsMyFirstTimeSenpai = true; //I don't think that's how it works in real life if (needTurningBack && myScript.id != activeArea) //Ha az egér már nincs a terület fölött, váltsuk vissza a színét. { myScript.resetColor(); needTurningBack = false; } } }
public void RealChat(bool isSend, string text) { AreaScript Area = Instantiate(isSend ? BlueArea : WhiteArea).GetComponent <AreaScript>(); Area.transform.SetParent(ContentRect.transform, false); Area.BoxRect.sizeDelta = new Vector2(450, Area.BoxRect.sizeDelta.y); Area.TextRect.GetComponent <Text>().text = text; Fit(Area.BoxRect); float x = Area.TextRect.sizeDelta.x + 42; float y = Area.TextRect.sizeDelta.y; if (y > 49) { for (int i = 0; i < 200; i++) { Area.BoxRect.sizeDelta = new Vector2(x - i * 2, Area.BoxRect.sizeDelta.y); Fit(Area.BoxRect); if (y != Area.TextRect.sizeDelta.y) { Area.BoxRect.sizeDelta = new Vector2(x - (i * 2) + 2, y); break; } } } else { Area.BoxRect.sizeDelta = new Vector2(x, y); } Fit(Area.BoxRect); Fit(Area.AreaRect); Fit(ContentRect); LastArea = Area; Invoke("ScrollDelay", 0.03f); }
// Update is called once per frame void Update() { area = WorldManager.world.area; }
public override void OnInspectorGUI() { AreaScript areaScript = (AreaScript)target; //base.OnInspectorGUI(); GUIStyle style = new GUIStyle(GUI.skin.box); GUILayout.BeginVertical(style); GUILayout.Space(5); EditorGUI.indentLevel += 1; serializedObject.Update(); EditorList.Show(serializedObject.FindProperty("properties")); serializedObject.ApplyModifiedProperties(); EditorGUI.indentLevel -= 1; GUILayout.Space(10); GUILayout.EndVertical(); GUILayout.Space(5); GUILayout.BeginVertical(style); GUILayout.Label("Options", EditorStyles.boldLabel); GUILayout.Space(5); GUILayout.BeginHorizontal(); if (GUILayout.Button("Create New Spawn Area")) { areaScript.AddArea(); EditorUtility.SetDirty(areaScript); } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); index = EditorGUILayout.IntField(index); if (GUILayout.Button("Delete Spawn Area")) { areaScript.RemoveArea(index); EditorUtility.SetDirty(areaScript); } GUILayout.EndHorizontal(); if (GUILayout.Button("Clear All Spawn Area")) { areaScript.ResetAll(); EditorUtility.SetDirty(areaScript); } GUILayout.Space(5); GUILayout.EndVertical(); }