static void Postfix(Boomerang __instance) { string naam = "BoomerangCamo"; try { var model = Findboomerang.Find_boomerang(__instance); Console.WriteLine("[" + naam + "]gameobject loaded succesfully"); if (model != null) { var skinnedRenderer = model.GetComponent <SkinnedMeshRenderer>(); var texture = TextureUtils.LoadTexture(@"./QMods/BoomerangCamo/BoomerangCamoDiff.png", naam); skinnedRenderer.sharedMaterial.mainTexture = texture; Console.WriteLine("[" + naam + "] Running as intended![this is a message to see if the peeper creature gets called properly]"); } else { Console.WriteLine("[" + naam + "] An unknown error occured. Boomerang game object is null"); } } catch (Exception e) { Console.WriteLine("[" + naam + "]" + e.Message); } }
public void NetworkThrow(Vector3 targetPosition) { Boomerang netboom = Instantiate(boomerangPrefab, transform.position, transform.rotation); netboom.Throw(this, targetPosition, speedUnitsPerSecond, rotationAnglePerSecond, hangTimeSeconds); netboom.transform.parent = null; }
public override void Start() { base.Start(); b1 = p1.GetComponent <Boomerang>(); b2 = p2.GetComponent <Boomerang>(); path1 = Polar180(Poly(6)); path1 = Mult(boomerangRadius, path1); path2 = Negx(path1); //mainCycle = TPAndStart(this.transform, MainCycler); teleportHP = teleportHP1; teleport = firstTeleport; currentAttackTime = defaultAttackTime; fire = new FireProjectile(shotPrefab, shotDamage, shotKnockback, shotSpeed); fireBall = new FireProjectile(ballPrefab, 10, 1, 5, 2); boomerangCycle = Burst6; invulnCooldown = new Cooldown(teleportFromTime + teleportToTime); }
void Boomerang(GameObject shooter, int Rarity, int Index, bool isVamp, bool IsReinforce) { Vector3 scale = Vector3.one; if (GameManager.Inst().Player.GetBossMode()) { scale *= 0.5f; } if (IsReinforce) { scale *= 1.5f; } Objs[0] = GameManager.Inst().ObjManager.MakeBullet("Boomerang", Index); Objs[0].transform.position = NormalPos[0].transform.position; Objs[0].transform.rotation = NormalPos[0].transform.rotation; Objs[0].transform.localScale = scale; Boomerang bullet = Objs[0].gameObject.GetComponent <Boomerang>(); bullet.IsVamp = isVamp; bullet.Vamp = shooter; bullet.IsReinforce = IsReinforce; bullet.SetStart(); GameManager.Inst().SodManager.PlayEffect("Wp_Boomerang"); }
public void UpdateBoomerangType(Boomerang boomerang) { switch (boomerang.Type) { case Boomerang.BoomerangTypes.NORMAL: SetBoomerang(NormalRang); break; case Boomerang.BoomerangTypes.FIRE: SetBoomerang(FireRang); break; case Boomerang.BoomerangTypes.ICE: SetBoomerang(IceRang); break; case Boomerang.BoomerangTypes.SHOCK: SetBoomerang(LightningRang); break; case Boomerang.BoomerangTypes.OBSIDIAN: SetBoomerang(ObsidianRang); break; } }
//common private IEnumerator AttackSequence() { Vector2 lookDir = (CameraReference.Instance.camera.ScreenToWorldPoint(Input.mousePosition) - Player.Instance.gameObject.transform.position).normalized; Animator anim = Player.Instance.GetComponent <Animator>(); anim.SetTrigger("Attack"); if (comboReset.IsReady) { anim.SetInteger("Combo", 0); } else if (anim.GetInteger("Combo") == 0) { anim.SetInteger("Combo", 1); } else { anim.SetInteger("Combo", 0); } comboReset.Use(1f); anim.SetFloat("xInput", lookDir.x); anim.SetFloat("yInput", lookDir.y); Path lungePath = LinePath(lungeConverter, lookDir); Player.Instance.playerMove.SetPath(Boomerang.Mult(Player.Instance.playerMove.defaultSpeed, lungePath), .25f); yield return(new WaitForSeconds(.1f)); HitScan(); yield return(new WaitForSeconds(.1f)); HitScan(); }
public override bool IsActive(Microsoft.Xna.Framework.GameTime gameTime, QuestForTheCrown2.Levels.Level level) { if (_lastHitTime != null && _lastHitTime.Value + _stopTimeAfterHit > gameTime.TotalGameTime) { return(false); } if (base.IsActive(gameTime, level) && Entity.Weapons != null) { if (_boomerang != null) { _boomerang.OnHit -= _boomerang_OnHit; } _boomerang = Entity.Weapons.OfType <Boomerang>().FirstOrDefault(); _followBehavior.Entity = Entity; if (_boomerang == null || !_followBehavior.IsActive(gameTime, level)) { return(false); } _boomerang.OnHit += _boomerang_OnHit; var distanceInSeconds = CurrentTarget.Distance / Boomerang.FlightSpeed; var mpTravelDistance = distanceInSeconds; if (!level.ContainsEntity(_boomerang)) { mpTravelDistance -= 0.5f; } var mpNecessary = mpTravelDistance / 0.2; return(Entity.Magic > mpNecessary); } return(false); }
public StateBoomerangForward(PlayerControl _p, Boomerang _b, float _speed) { b = _b; speed = _speed; p = _p; if (p.current_direction == Direction.NORTH) { direction_offset = new Vector3(0, 1, 0); } else if (p.current_direction == Direction.EAST) { direction_offset = new Vector3(1, 0, 0); } else if (p.current_direction == Direction.SOUTH) { direction_offset = new Vector3(0, -1, 0);; } else if (p.current_direction == Direction.WEST) { direction_offset = new Vector3(-1, 0, 0); } b.GetComponent <Rigidbody>().velocity = direction_offset * speed; }
//Create boomerang bodies private void CreateBoomerangBodies() { // Set the food position to a random point hex.transform.position = new Vector2(Random.Range(-37, 37), Random.Range(-15, 15)); // if our boomerang list is not null if (boomerangList != null) { // Destroy every Boomerang for (int i = 0; i < boomerangList.Count; i++) { GameObject.Destroy(boomerangList[i].gameObject); } } // Create a new boomerang list boomerangList = new List <Boomerang>(); // Iterate through the population size for (int i = 0; i < populationSize; i++) { // Instantiate a boomerang at a random position and get the component Boomerang boomer = ((GameObject)Instantiate(boomerPrefab, new Vector3(UnityEngine.Random.Range(-10f, 10f), UnityEngine.Random.Range(-10f, 10f), 0), boomerPrefab.transform.rotation)).GetComponent <Boomerang>(); //Call the Init method boomer.Init(nets[i], hex.transform); //Add it the list boomerangList.Add(boomer); } }
private void OnTriggerEnter2D(Collider2D otherCollider) { AEnemy enemyScript = otherCollider.gameObject.GetComponent <AEnemy>(); // Check if the object is an enemy by looking for an enemy script if (enemyScript != null && !enemyScript.IsDead()) // If enemy isn't already dead, do damage { AudioManager.Instance.PlayOneShot("BoomerangHit"); enemyScript.TakeDamage(Player.BoomerangDamage); } Boomerang boomerangScript = otherCollider.gameObject.GetComponent <Boomerang>(); if ((boomerangScript != null) && (numExplosions > 0)) // If object is another boomerang { Vector2 vel = boomerangRb.velocity; float thisAngle = Mathf.Atan2(vel.y, vel.x) * Mathf.Rad2Deg; float otherAngle = Mathf.Atan2(otherCollider.GetComponent <Rigidbody2D>().velocity.y, otherCollider.GetComponent <Rigidbody2D>().velocity.x) * Mathf.Rad2Deg; if (Mathf.Abs(otherAngle - thisAngle) > minAngle) // Check that the angle between the two boomerangs' velocity is bigger than 10 { Vector2 offset = vel * (0.55f / vel.magnitude); // Offsetting it so that the explosion is at the intersection of the two boomerangs Instantiate(_player.boomerangExplosionEffect, this.transform.position + new Vector3(offset.x, offset.y, 0f), Quaternion.AngleAxis(thisAngle, Vector3.forward)); numExplosions -= 1; } } }
public void TerminateBoomerang() { if (currentItem != null) { currentItem = null; boomerang = null; } }
//Changed this public StateBoomerangReturning(PlayerControl _p, Boomerang _b, float _speed, GameObject _pickedUpObject = null) { b = _b; speed = _speed; p = _p; pickedUpObject = _pickedUpObject; b.GetComponent<BoxCollider>().isTrigger = true; }
public void boomerangShoot(Vector2 direction) { DecreaseDurability(mode2Option.minusDurability); Boomerang = Instantiate(BoomerangPrefab, ShotPosition.position, Quaternion.identity); Boomerang.GetComponent <Rigidbody2D>().velocity = direction * 20f; Boomerang.GetComponent <Boomerang>().playerNo = equipPlayer.playerNo; Boomerang.GetComponent <Boomerang>().direction = direction; }
public void AddSelfToRoom() { roomId = Boomerang.RoomId(transform.position); if (!Boomerang.plants.ContainsKey(roomId)) { Boomerang.plants[roomId] = new List <Vector3>(); } Boomerang.plants[roomId].Add(transform.position); }
//Changed this public StateBoomerangReturning(PlayerControl _p, Boomerang _b, float _speed, GameObject _pickedUpObject = null) { b = _b; speed = _speed; p = _p; pickedUpObject = _pickedUpObject; b.GetComponent <BoxCollider>().isTrigger = true; }
public void SetBoomerang(Boomerang newType) { if (CurrentBoomerang != newType) { CurrentBoomerang = newType; CurrentBoomerang.SetColor(CurrentBoomerang.BoomerangColor); Debug.Log("Current Boomerang = " + CurrentBoomerang + " and Booomerang Color = " + CurrentBoomerang.BoomerangColor); } }
void GameOver() { if (gameEnd.levelsComplete == 17 & overText != "Good Try") { overText = "That's all!"; } gameOverPanel.SetActive(true); Levelend.gameOverText.text = overText; Boomerang.GameOver(); }
private void OnTriggerEnter2D(Collider2D other) { if (other.GetComponent <Boomerang>()) { Boomerang boomerang = other.GetComponent <Boomerang>(); boomerang.Pickup(); //print("Triggered boomerang."); } }
private static void InitHuntress(Hero hero) { hero.HP = (hero.HT -= 5); (hero.Belongings.Weapon = new Dagger()).Identify(); var boomerang = new Boomerang(); boomerang.Identify().Collect(); Dungeon.Quickslot = boomerang; }
private void Throw() { if (previewBoomerang && !boomerang) { Vector3 targetPosition = previewBoomerang.transform.position; Destroy(previewBoomerang.gameObject); boomerang = Instantiate(boomerangPrefab, transform.position, transform.rotation); boomerang.Throw(this, targetPosition, speedUnitsPerSecond, rotationAnglePerSecond, hangTimeSeconds); boomerang.transform.parent = null; } }
// Start is called before the first frame update void Start() { animator = GetComponent <Animator>(); t = GetComponent <Transform>(); boomerang = Instantiate(boomerangPrefab, t.position, Quaternion.identity); boomerang.transform.SetParent(t, false); boomerang.GetComponent <InputToSwordAnimator>().enabled = false; boomerang.isPlayer = false; animator.speed = 1f; boomerang.gameObject.SetActive(true); }
public void UseBoomerang() { if (currentItem == null) { if (inventory.Contains(typeof(Boomerang))) { boomerang = new Boomerang(player); currentItem = boomerang; } } }
public static void moveupdate() { if (alpha1 >= startalpha + (2 * Mathf.PI)) { Boomerang.resetboom(); return; } boomer.transform.position = new Vector2(centeroftravel.x + (x * MCos(alpha1) * MCos(tilt1)) - (3f * MSin(alpha1) * MSin(tilt1)), centeroftravel.y + (x * MCos(alpha1) * MSin(tilt1)) + (3f * MSin(alpha1) * MCos(tilt1))); alpha1 += 0.05f; }
public void CanAddLittleItems() { Satchel bag = new Satchel(); Boomerang rang = new Boomerang(); WoodenSword sword = new WoodenSword(); bag.AddItem(rang); bag.AddItem(sword); Assert.AreEqual(2, bag.ItemCount); bag.DisplayContents(); }
protected override void SendProjectile() { if (_currentEnemy == null) { return; } Boomerang p = Instantiate(boomerang, transform.TransformPoint(_firstNode.Position), transform.rotation, spawnParent); p.SetEnemy(_currentEnemy); p.damage = Mathf.FloorToInt(damage * modifier.damageModifier); p.speed = projectileSpeed; }
public void Draw() { Background.Draw(_location); CursorGrid.Draw(CursorSize * _cursorPosition.ToVector2() + GridLocation + _location); _selectedItem?.Draw(_location + SelectedItemLocation); var dungeonManager = (DungeonManager)_agent.DungeonManager; var currentRoom = _agent.DungeonManager.CurrentRoom.ToVector2(); var visitedRooms = dungeonManager.VisitedRooms; if (dungeonManager.CurrentRoomMapped) { PlayerMapDot.Draw(MapGridCoverSize * currentRoom + MapGridLocation + _location); } for (var row = 0; row < visitedRooms.Length; row++) { for (var col = 0; col < visitedRooms[row].Length; col++) { if (!visitedRooms[row][col]) { RoomCover.Draw(MapGridCoverSize * new Vector2(col, row) + MapGridLocation + _location); } } } if (_agent.Player.Inventory.HasMap) { Map.Draw(MapLocation + _location); } if (_agent.Player.Inventory.HasCompass) { Compass.Draw(CompassLocation + _location); } if (_agent.Player.Inventory.HasArrow) { Arrow.Draw(ArrowLocation + GridLocation + _location); } if (_agent.Player.Inventory.HasBow) { Bow.Draw(BowLocation + GridLocation + _location); } if (_agent.Player.Inventory.HasBoomerang) { Boomerang.Draw(BoomerangLocation + GridLocation + _location); } if (_agent.Player.Inventory.BombCount >= 1) { Bomb.Draw(BombLocation + GridLocation + _location); } }
public void Attack(Movement movement, Action onFinished) { Boomerang bmrg = Instantiate(boomerang, this.transform); bmrg.OnThrown( movement.currentBodyDirection == Movement.BodyDirection.Right, () => { onFinished.Invoke(); } ); //出現した瞬間自身と衝突して消滅するのを回避、かなりその場しのぎ DOVirtual.DelayedCall(0.2f, () => bmrg.GetComponent <Collider2D>().enabled = true); }
public static GameObject Find_boomerang(Boomerang __instance) { var gameObject = __instance.gameObject; try { Console.WriteLine("utils succes"); return(gameObject.FindChild("model").FindChild("Small_Fish_01"));//.FindChild("Stalker_02").FindChild("snout_shark_geo"); ; } catch { Console.WriteLine("utils fail"); return(gameObject); } }
protected override void DoAttack() { if (throwingYoyo) { return; } //YoyoSprite.enabled = false; projectile = Instantiate(ProjPrefab, transform.position, Quaternion.identity) as Boomerang; projectile.AddOnReturn = false; Vector2 dir = MathUtil.AngleToVector(transform.eulerAngles.z); projectile.Move(dir.normalized, this); throwingYoyo = true; }
void Update() { visual.GetComponent <RawImage>().enabled = IsHighlighted() == true; if (!IsPressed()) { return; } int x; switch (gameObject.name) { case "Start": Menu.LoadLevel(2); break; case "Levels": Menu.LoadLevel(1); break; case "FreePlay": Menu.LoadLevel(20); break; case "Quit": Menu.QuitGame(); break; case "Menu": Menu.LoadLevel(0); break; case "Back": Menu.LoadLevel(0); break; case "Restart": Boomerang.Restart(); Menu.LoadLevel(SceneManager.GetActiveScene().buildIndex); break; default: x = Int32.Parse(gameObject.name) + 1; Menu.LoadLevel(x); break; } Boomerang.Reset(); }
public StateBoomerangForward(PlayerControl _p, Boomerang _b, float _speed) { b = _b; speed = _speed; p = _p; if (p.current_direction == Direction.NORTH) { direction_offset = new Vector3(0, 1, 0); } else if (p.current_direction == Direction.EAST) { direction_offset = new Vector3(1, 0, 0); } else if (p.current_direction == Direction.SOUTH) { direction_offset = new Vector3(0, -1, 0);; } else if (p.current_direction == Direction.WEST) { direction_offset = new Vector3(-1, 0, 0); } b.GetComponent<Rigidbody>().velocity = direction_offset * speed; }
public void PutItemInBackpackSuccessfully() { //Arrange Backpack bag = new Backpack(); Boomerang rang = new Boomerang(); WoodenSword sword = new WoodenSword(); BattleAxe axe = new BattleAxe(); //Act bag.AddItem(rang); bag.AddItem(sword); bag.AddItem(axe); //Assert Assert.AreEqual(3, bag.ItemCount); bag.DisplayContents(); }