GameObject GenerateEnemy(int i, int rl, int rh) { GameObject enemy = new GameObject(); SpriteRenderer enemySprite = new SpriteRenderer(); BoxCollider2D enemyCollider = new BoxCollider2D(); //Maybe dont need this? CircleCollider2D enemyCirCollide = new CircleCollider2D(); enemy.AddComponent<movements>(); enemy.AddComponent<FlockingAlgorithm>(); enemy.AddComponent<Rigidbody2D>(); enemy.AddComponent<Attributes>(); enemy.AddComponent<Attack> (); enemy.AddComponent<Fireball> (); spriteHolder = Resources.LoadAll("pc"); enemy.GetComponent<FlockingAlgorithm>().seperation = 1; enemy.GetComponent<movements>().speed = UnityEngine.Random.Range(5, 15); enemySprite = enemy.AddComponent<SpriteRenderer>(); enemyCirCollide = enemy.AddComponent<CircleCollider2D>(); enemyCollider = enemy.AddComponent<BoxCollider2D>(); enemySprite.sprite = Resources.Load<Sprite>("enemy"); enemyCount++; enemy.name = "enemy" + enemyCount.ToString(); enemy.tag = "Enemy"; enemy.transform.parent = this.transform; enemy.transform.localPosition = new Vector3(CalPos(rl), CalPos(rh), -1); //add rightHand to player GameObject rightHand = new GameObject(); //rightHand.tag = "RightHand"; rightHand.name = "Right Hand"; rightHand.tag = "Enemy"; rightHand.transform.parent = enemy.transform; rightHandItem = rightHand.AddComponent<basic_sword>(); rightSr = rightHand.AddComponent<SpriteRenderer>(); spriteHolder = Resources.LoadAll("item/weapon"); rightSr.sprite = (Sprite)spriteHolder[1]; rightHand.transform.localPosition = new Vector3(18 / 24f, 18 / 24f, 0); rightHand.transform.localRotation = Quaternion.LookRotation(new Vector3(0, 0, wpnz), Vector3.up); rightBc = rightHand.AddComponent<BoxCollider2D>(); rightBc.isTrigger = true; rightHand.AddComponent<damage>(); rightHand.SendMessage("setWeapon", rightHandItem); enemy.GetComponent<Attack> ().rightHand = rightHand; rightHand.SetActive(false); return enemy; }
// Use this for initialization void Start() { //create player plyr = new GameObject(); this.transform.parent = plyr.transform; plyr.name = "Player"; plyr.tag = "Player"; plyrStats = plyr.AddComponent<Attributes>(); plyr.AddComponent<playermovement>(); playerSprite = plyr.AddComponent<SpriteRenderer>(); spriteHolder = Resources.LoadAll("pc"); playerSprite.sprite = (Sprite)spriteHolder[1]; playerCollider = plyr.AddComponent<BoxCollider2D>(); playerCollider.transform.parent = plyr.transform; plyrRb = plyr.AddComponent<Rigidbody2D>(); plyr.transform.localPosition = new Vector3(0, 0, -1); plyrRb.gravityScale = 0; plyrRb.isKinematic = false; plyrRb.drag = 10; plyr.AddComponent<Fireball>(); plyr.AddComponent<Heal>(); //need to set items colliders as triggers and give them an OnTriggerEnter2D that checks for Player tag //and adds itself to inventory if true. inv = plyr.AddComponent<PlayerInventory>(); GameObject localMaster = GameObject.Find("Main Camera"); //localMaster.AddComponent<CameraMovement>(); localMaster.GetComponent<CameraMovement>().SetPlayer(plyr); //add rightHand to player rightHand = new GameObject(); rightHand.name = "Right Hand"; rightHand.tag = "Player"; rightHand.transform.parent = plyr.transform; rightHandItem = rightHand.AddComponent<basic_sword>(); rightSr = rightHand.AddComponent<SpriteRenderer>(); spriteHolder = Resources.LoadAll("item/weapon"); rightSr.sprite = (Sprite)spriteHolder[1]; //rightSr.sprite = (Sprite)Resources.LoadAll("item/weapon")[0]; rightHand.transform.localPosition = new Vector3(18 / 24f, 18 / 24f, 0); rightHand.transform.localRotation = Quaternion.LookRotation(new Vector3(0, 0, wpnz), Vector3.up); rightBc = rightHand.AddComponent<BoxCollider2D>(); rightBc.isTrigger = true; rightHand.AddComponent<damage>(); rightHand.SendMessage("setWeapon", rightHandItem); rightHand.SetActive(false); /*//add leftHand to player rightHand = new GameObject(); rightHand.name = "Right Hand"; rightHand.transform.parent = plyr.transform; handItem = rightHand.AddComponent<basic_sword>(); wpn = rightHand.AddComponent<SpriteRenderer>(); wpn.sprite = (Sprite)Resources.LoadAll("item/weapon")[2]; rightHand.transform.localPosition = new Vector3(-18 / 24f, 18 / 24f, 0); rightHand.transform.localRotation = Quaternion.LookRotation(new Vector3(0, 0, wpnz), Vector3.up); rightHand.SetActive(false); rightHand.AddComponent<BoxCollider2D>();*/ //instantiate enemiesHit //enemiesHit = new ArrayList(); }
void setWeapon(weaponItem weapon) { rightHandItem = weapon; }