public override void Pickup(PlayerController player) { if (this.m_pickedUp) { return; } base.Pickup(player); this.m_player = player; player.OnUsedBlank += this.Activate; PassiveItem.IncrementFlag(player, typeof(WingsItem)); }
public override void Pickup(PlayerController player) { base.Pickup(player); PassiveItem.IncrementFlag(player, typeof(PickpocketGuide)); if (!PassiveItem.ActiveFlagItems.ContainsKey(player)) { PassiveItem.ActiveFlagItems.Add(player, new Dictionary <Type, int>()); } unstealthBehavior unstealthBehavior = player.gameObject.GetOrAddComponent <unstealthBehavior>(); unstealthBehavior.parentItem = this; }
public override void Pickup(PlayerController player) { base.Pickup(player); PassiveItem.IncrementFlag(player, typeof(CatchingMitts)); if (!PassiveItem.ActiveFlagItems.ContainsKey(player)) { PassiveItem.ActiveFlagItems.Add(player, new Dictionary <Type, int>()); } cooldownBehavior cooldownBehavior = player.gameObject.GetOrAddComponent <cooldownBehavior>(); cooldownBehavior.parentItem = this; }
private IEnumerator HandleSwing(PlayerController user, Vector2 aimVec, float rayDamage, float rayLength) { float elapsed = 0f; while (elapsed < .1) { elapsed += BraveTime.DeltaTime; SpeculativeRigidbody hitRigidbody = this.IterativeRaycast(user.CenterPosition, aimVec, rayLength, int.MaxValue, user.specRigidbody); if (hitRigidbody && hitRigidbody.aiActor && !hitRigidbody.aiActor.healthHaver.IsBoss && hitRigidbody.aiActor.IsNormalEnemy) { hitRigidbody.aiActor.healthHaver.ApplyDamage(rayDamage, aimVec, "Hero's Sword", CoreDamageTypes.None, DamageCategory.Normal, false, null, false); user.IsEthereal = true; user.SetIsStealthed(true, "cause they just are"); PassiveItem.IncrementFlag(user, typeof(LiveAmmoItem)); if (modifierController == 0) { user.MovementModifiers += this.NoMotionModifier; user.IsStationary = true; modifierController++; } user.CurrentStoneGunTimer = 9999999f; this.LastOwner.stats.RecalculateStats(LastOwner, true); host = hitRigidbody.aiActor; vangaurd = true; MindControlEffect orAddComponent = host.gameObject.GetOrAddComponent <MindControlEffect>(); orAddComponent.owner = user; host.CompanionOwner = user; host.aiActor.SetAIMovementContribution(Vector2.zero); host.BaseMovementSpeed = 15; host.IsWorthShootingAt = true; host.IgnoreForRoomClear = true; host.HitByEnemyBullets = true; host.UniquePlayerTargetFlag = true; CompanionisedEnemyBulletModifiers friend = host.gameObject.GetOrAddComponent <CompanionisedEnemyBulletModifiers>(); friend.Start(); host.Update(); TargetNumber1(host, user); CamToggle = 1; } yield return(null); } yield break; }
//This block of code allows us to change the reload sounds. protected override void Update() { if (gun.CurrentOwner) { if (!gun.PreventNormalFireAudio) { this.gun.PreventNormalFireAudio = true; } if (!gun.IsReloading && !HasReloaded) { this.HasReloaded = true; } PassiveItem.IncrementFlag((PlayerController)this.gun.CurrentOwner, typeof(LiveAmmoItem)); } }
public override void Pickup(PlayerController player) { base.Pickup(player); PassiveItem.IncrementFlag(player, typeof(LootersGloves)); if (!PassiveItem.ActiveFlagItems.ContainsKey(player)) { PassiveItem.ActiveFlagItems.Add(player, new Dictionary <Type, int>()); } if (!PassiveItem.ActiveFlagItems[player].ContainsKey(typeof(CorpseExplodeActiveItem))) { PassiveItem.ActiveFlagItems[player].Add(typeof(CorpseExplodeActiveItem), 1); } else { PassiveItem.ActiveFlagItems[player][typeof(CorpseExplodeActiveItem)] = PassiveItem.ActiveFlagItems[player][typeof(CorpseExplodeActiveItem)] + 1; } }
protected override void DoEffect(PlayerController player) { if (numberOfUses == 2 && host == null) { //head IntVector2 aim = Vector2Extensions.ToIntVector2(player.unadjustedAimPoint, VectorConversions.Round); RoomHandler room = GameManager.Instance.Dungeon.data.GetAbsoluteRoomFromPosition(aim); AIActor orLoadByGuid = EnemyDatabase.GetOrLoadByGuid("c2f902b7cbe745efb3db4399927eab34"); AIActor aiActor = AIActor.Spawn(orLoadByGuid.aiActor, player.CenterPosition, room, true, AIActor.AwakenAnimationType.Spawn, true); PhysicsEngine.Instance.RegisterOverlappingGhostCollisionExceptions(aiActor.specRigidbody, null, false); aiActor.CanTargetEnemies = true; aiActor.CanTargetPlayers = false; aiActor.IgnoreForRoomClear = true; aiActor.MovementSpeed = 10f; aiActor.CompanionOwner = player; aiActor.reinforceType = AIActor.ReinforceType.Instant; aiActor.HandleReinforcementFallIntoRoom(.1f); host = aiActor; MindControlEffect mindControl = aiActor.gameObject.GetOrAddComponent <MindControlEffect>(); mindControl.owner = player; player.IsEthereal = true; player.SetIsStealthed(true, "cause they just are"); PassiveItem.IncrementFlag(player, typeof(LiveAmmoItem)); if (modifierController == 0) { player.MovementModifiers += this.NoMotionModifier; player.IsStationary = true; modifierController++; } player.CurrentStoneGunTimer = 9999999f; this.LastOwner.stats.RecalculateStats(LastOwner, true); CamToggle = 1; } if (numberOfUses == 1) { player.CurrentStoneGunTimer = 1f; player.MovementModifiers -= this.NoMotionModifier; player.IsStationary = false; modifierController = 0; player.IsEthereal = false; if (host != null) { host.healthHaver.ApplyDamage(99999, Vector2.zero, "unbound", CoreDamageTypes.Magic, DamageCategory.Unstoppable, true, null, false); host = null; } player.SetIsStealthed(false, "cause they just are"); CamToggle = 0; GameManager.Instance.MainCameraController.StartTrackingPlayer(); GameManager.Instance.MainCameraController.SetManualControl(false, true); } }
public override void Pickup(PlayerController player) { PassiveItem.IncrementFlag(player, typeof(LiveAmmoItem)); base.Pickup(player); }