public override void Update(float gameTime, Map map, ParticleManager pMan, Character[] c) { if (HitManager.CheckHit(this, c, pMan)) { frame = 0f; } Trajectory.Y = (float)Math.Sin((double)frame * 13.0) * 150f; if (map.CheckParticleCol(Location)) { this.frame = 0f; pMan.MakeExplosion(Location, 1f); } pMan.AddParticle(new Fire(Location, -Trajectory / 8f, .5f, Rand.GetRandomInt(0, 4))); pMan.AddParticle(new Smoke(Location, Rand.GetRandomVector2(-20f, 20f, -50f, 10f) - Trajectory / 10f, 1f, .8f, .6f, 1f, .5f, Rand.GetRandomInt(0, 4))); pMan.AddParticle(new Heat(Location, Rand.GetRandomVector2(-20f, 20f, -50f, -10f), Rand.GetRandomFloat(.5f, 2f))); base.Update(gameTime, map, pMan, c); }
// Start is called before the first frame update void Awake() { targeting = false; targetingRange = 4; facing = new Vector2(0, -1); dead = false; rb = gameObject.AddComponent <Rigidbody2D>(); rb.freezeRotation = true; rb.gravityScale = 0; collider = gameObject.AddComponent <BoxCollider2D>(); sr = gameObject.AddComponent <SpriteRenderer>(); sprite = Resources.Load <Sprite>("Enemy"); sr.sprite = sprite; HitManager man = GameObject.Find("[HitManager]").GetComponent <HitManager>(); man.AddEnemy(this.gameObject); hb = gameObject.GetComponent <HealthBar>(); weapon = this.gameObject.AddComponent <Weapon>(); weapon2 = this.gameObject.AddComponent <Weapon>(); modifier = 1.0f + Random.Range(-levelNum / 5.0f, levelNum / 5.0f); }
private void OnCheckAtlas() { _selectHit = null; _selectSpriteName = ""; HitManager.Clear(); List <Object> prefabList = GetPrefabs(); foreach (Object obj in prefabList) { GameObject go = obj as GameObject; List <UISprite> sprites = PrefabSpriteManager.GetAllSprite(go); foreach (UISprite sprite in sprites) { if (sprite.atlas != _targetAtlas) { continue; } foreach (UISpriteData data in _targetAtlas.spriteList) { HitManager managr = HitManager.GetManager(data.name); if (sprite.spriteName != data.name) { continue; } string path = GameObjectExt.GetHierarchyWithRoot(sprite.transform, go.transform); managr.SetEditPrefab(go); managr.AddHit(path); } } } }
private void OnTriggerEnter(Collider col) { if (col.GetComponentInParent <IHittable>() == null) { return; } PlayerStats ps; if ((ps = col.GetComponentInParent <PlayerStats>()) != null && ps.gameObject == sourcePlayer.gameObject) { return; } else { Rigidbody r; if ((r = col.transform.GetComponent <Rigidbody>()) != null) { if (ps && !hasHit.Contains(ps)) { if (!hitSameTeam && ps.teamIndex == sourcePlayer.GetComponent <PlayerStats>().teamIndex&& ps.teamIndex != -1) { return; // dont hit players on same team } hasHit.Add(ps); HitManager.HitClientside(new HitArguments(r.GetComponentInParent <BasePlayer>().gameObject, sourcePlayer).withDamage(ability.damage).withEffect(effect).withEffectDuration(effectDuration).withHitSameTeam(hitSameTeam)); if (hasHit.Count <= 1) { Invoke("DestroyMe", effectDuration); } } } } }
private void OnCheckIgnore() { _ignoreList.Clear(); if (HitManager.GetAllManagers().Count <= 0) { return; } foreach (UISpriteData data in _targetAtlas.spriteList) { HitManager mgr = HitManager.GetManager(data.name); if (mgr != null && mgr.hitTotal > 0) { continue; } foreach (string suffix in _ignoreSuffixs) { if (data.name.EndsWith(suffix)) { string prefix = data.name.Replace(suffix, ""); foreach (HitManager manager in HitManager.GetAllManagers()) { if (manager.hitTotal > 0 && manager.spriteName != data.name && manager.spriteName.StartsWith(prefix)) { _ignoreList.Add(data.name); } } } } } }
//Populates the Game's data using info/functions from GameData; void Start() { LoadResources(); hitmanager = GetComponent <HitManager>(); stagebuilder = GetComponent <StageBuilder>(); player1 = SpawnMorganis(); player1.playerNum = 1; player2 = SpawnExamplePlayer(new Vector3(5, -2.25F)); player2.playerNum = 2; PlayerAttackManager.nullAttackLists.Add(player1.nullify); PlayerAttackManager.nullAttackLists.Add(player2.nullify); //not needed for now /*GameObject HUI =*/ Instantiate(healthUI); GameObject damageCounter1 = GameObject.Find("Player1Health"); GameObject damageCounter2 = GameObject.Find("Player2Health"); damageCounter1.GetComponent <DamageCounter>().damageSource = player1; damageCounter2.GetComponent <DamageCounter>().damageSource = player2; stagebuilder.ConstructFlat(); }
private void OnTriggerEnter(Collider col) { if (col.GetComponentInParent <IHittable>() == null) { return; } PlayerStats ps; if ((ps = col.GetComponentInParent <PlayerStats> ()) != null && ps.gameObject == sourcePlayer.gameObject) { return; } else { Rigidbody r; if ((r = col.transform.GetComponent <Rigidbody>()) != null) { if (ps) { if (!hitSameTeam && ps.teamIndex == sourcePlayer.GetComponent <PlayerStats>().teamIndex&& ps.teamIndex != -1) { return; // dont hit players on same team } r.GetComponentInParent <BasePlayer>().myRigid.AddExplosionForce(ability.pushForce, transform.position, radius); HitManager.HitClientside(new HitArguments(r.GetComponentInParent <BasePlayer>().gameObject, sourcePlayer).withDamage(ability.damage).withHitSameTeam(hitSameTeam)); } else { r.AddExplosionForce(ability.pushForce, transform.position, radius); } } } }//TODO: add continuous upward force
public override void SpawnSpell(PlayerComponent.Buf data) { Vector3 spawnAngle = data.vectorList[0]; Vector3 spawnPosition = data.vectorList[1]; // Spawn our spell in the place the server told us // However if we are the client, we don't wait for that luxury. GameObject spawn = GameObject.Instantiate(itemToSpawn, spawnPosition + transform.TransformDirection(spawnOffset), transform.rotation); Rigidbody r; Quaternion aimAngle = Quaternion.LookRotation(spawnAngle); flameSpawned = GameObject.Instantiate(FlameThrowerEffect, spawnPosition + transform.TransformDirection(spawnOffset), aimAngle); if (r = spawn.GetComponent <Rigidbody>()) { r.AddForce(spawnAngle * spawnSpeed); } OnSpellSpawned(spawn); Destroy(flameSpawned, lifetime); PlayerStats sourcePlayerStats = GetComponentInParent <PlayerStats>(); HitManager.HitClientside(new HitArguments(sourcePlayerStats.gameObject, sourcePlayerStats.gameObject).withEffect(effect).withEffectDuration(cooldown)); }
/// <summary> /// 检查全部 /// </summary> private void OnCheckSameFile(List <string> validList = null) { InitSame(); UpdateSizeHitDct(validList); foreach (List <string> list in _size2Filenames.Values) { if (list != null && list.Count > 1) { UpdateHashHitFiles(list, validList); } } HitManager.Clear(); //初始化 PrefabSpriteManager.InitAndCheck(); foreach (List <string> list in _hash2Filenames.Values) { if (list == null || list.Count <= 1) { continue; } foreach (string filename in list) { string filePath = filename; if (!PrefabSpriteManager.pngName2Refs.ContainsKey(filePath)) { continue; } var spriteDataList = PrefabSpriteManager.pngName2Refs[filePath]; HitManager managr = HitManager.GetManager(filePath); foreach (var spriteData in spriteDataList) { managr.SetEditPrefab(spriteData.prefabName, spriteData.uiPath); managr.AddHit(spriteData.spriteUIPath); } } } _sameCount = 0; foreach (List <string> list in _hash2Filenames.Values) { if (list != null && list.Count > 1) { _sameCount++; } } Debug.Log(string.Format("重复数为:{0}", _sameCount)); _refCount = 0; foreach (var manager in HitManager.GetAllManagers()) { _refCount += manager.hitTotal; } Debug.Log(string.Format("UI引用数为:{0}", _refCount)); }
private void Start() { _hitManager = ManagerLocator.TryGet <HitManager>(); _pool = ManagerLocator.TryGet <PoolManager>(); ManagerLocator.TryGet <GameController>().OnGameOver += HandleGameOver; ManagerLocator.TryGet <GameController>().OnGameStart += HandleGameStart; }
void Awake() { if (instance == null) { instance = this; } else { Destroy(this); } }
// Start is called before the first frame update void Start() { HitManager = GameObject.FindObjectOfType <HitManager>(); Ball[] golfBalls = GameObject.FindObjectsOfType <Ball>(); foreach (var golfBall in golfBalls) { if (!golfBall.isMimicBall) { golfBallTrans = golfBall.transform; } } }
private int GetRefUICount(string filename) { HitManager manager = HitManager.GetManager(filename); return(manager.hitTotal); /* * if (!_filename2UIPaths.ContainsKey(filename)) return 0; * List<string> list = _filename2UIPaths[filename]; * return list.Count; */ }
public override void Update(float gameTime, ZombieSmashers.map.Map map, ParticleManager pMan, Character[] c) { if (!netSend) { HitManager.CheckHit(this, c, pMan); KillMe(); } }
public override void TakeDamage(int damageAmount, Vector2 hitPosition, Vector2 hitDirection) { HitManager.SpawnHitEffect(hitPosition, hitDirection, EffectType.Blood); health -= damageAmount; if (health <= 0) { controller.SetSimulated(false); animator.SetTrigger("Dead"); inputManager.enabled = false; characterState.enabled = false; StartCoroutine(EnemyDestruction()); } }
//public List<GameObject> gONotInGround; void Awake() { if (instance != null) { Debug.LogError("There is two instances off CoinManager"); return; } else { instance = this; } //gONotInGround = new List<GameObject> (); }
// Start is called before the first frame update void Awake() { rate = 2.0f; size = 0.3f; speed = 4.0f; n = 1; theta = 0; maxBulletAge = 3.0f; damage = 10; bullets = new List <GameObject>(); HitManager man = GameObject.Find("[HitManager]").GetComponent <HitManager>(); man.AddWeapon(this); }
public override void Update(float gameTime, Map map, ParticleManager pMan, Character[] c) { if (HitManager.CheckHit(this, c, pMan)) { Frame = 0f; } if (map.CheckParticleCol(Location)) { Frame = 0f; pMan.MakeBulletDust(Location, Trajectory); } base.Update(gameTime, map, pMan, c); }
public override void Effect_Update() { if (Time.time - lastDamage > coolDown) { if (targetStats.poisonStacks > 1) { targetStats.poisonStacks--; Destroy(this.gameObject); } lastDamage = Time.time; HitManager.HitClientside(new HitArguments(targetStats.gameObject, this.sourcePlayer.GetComponentInParent <PlayerStats> ().gameObject) .withDamage(damage)); } }
public override void TakeDamage(int damageAmount, Vector2 hitPosition, Vector2 hitDirection) { HitManager.SpawnHitEffect(hitPosition, hitDirection, EffectType.Blood); health -= damageAmount; if (health <= 0 && !GameManager.GetInstance().godModeEnabled) { controller.SetSimulated(false); animator.SetTrigger("Die"); animator.SetBool("Dead", true); inputManager.enabled = false; characterState.enabled = false; EventManager.TriggerEvent(Constants.PlayerDeathEvent); StartCoroutine(AfterPlayerDeath()); } }
void OnTriggerEnter2D(Collider2D other) { if (!targetHitted && other.CompareTag(targetTag)) { targetHitted = true; var enemy = other.gameObject.GetComponent <Character>(); enemy.TakeDamage(damage, transform.position, flyDirection); Hit(); } else if (other.CompareTag("SolidObject")) { Hit(); HitManager.SpawnHitEffect(transform.position, flyDirection, EffectType.SolidObjectHit); } }
protected override IEnumerator EnemyDestruction() { yield return(new WaitForSeconds(destructionDelay)); HitManager.SpawnHitEffect(transform.position, Vector3.right, EffectType.BombExplosion); HitManager.SpawnHitEffect(transform.position + new Vector3(-0.4f, -0.6f, 0.0f), Vector3.left, EffectType.Blood); HitManager.SpawnHitEffect(transform.position + new Vector3(-0.4f, 0.0f, 0.0f), Vector3.left, EffectType.Blood); HitManager.SpawnHitEffect(transform.position + new Vector3(-0.4f, 0.6f, 0.0f), Vector3.left, EffectType.Blood); HitManager.SpawnHitEffect(transform.position + new Vector3(0.4f, -0.6f, 0.0f), Vector3.right, EffectType.Blood); HitManager.SpawnHitEffect(transform.position + new Vector3(0.4f, 0.0f, 0.0f), Vector3.right, EffectType.Blood); HitManager.SpawnHitEffect(transform.position + new Vector3(0.4f, 0.6f, 0.0f), Vector3.right, EffectType.Blood); EventManager.TriggerEvent(Constants.DeactivatePlayerControlEvent); EventManager.TriggerEvent(Constants.ShowCreditsEvent); Destroy(this.gameObject); }
void DetonateBomb() { var hittedCharacters = new HashSet <int>(); _rigidbody2D.simulated = false; _rigidbody2D.velocity = Vector2.zero; HitManager.SpawnHitEffect(transform.position, Vector3.right, EffectType.BombExplosion); var colliders = Physics2D.OverlapCircleAll(transform.position, detonationRadius); for (int i = 0; i < colliders.Length; i++) { var character = colliders[i].GetComponent <Character>(); if (character && !hittedCharacters.Contains(character.gameObject.GetInstanceID())) { var raycastHit = Physics2D.Raycast(transform.position, character.transform.position - transform.position, 2 * detonationRadius); character.TakeDamage(damage, raycastHit.point, -raycastHit.normal); hittedCharacters.Add(character.gameObject.GetInstanceID()); } } Destroy(gameObject); }
public void CmdApplyDamage(HitManager.HitVerificationMethod ver, HitArguments hit) { //print("applying damage"); PlayerStats targetStats; if (hit.sourcePlayerTeam != -1 && (targetStats = hit.target.GetComponentInParent <PlayerStats>())) { if (targetStats.teamIndex == this.teamIndex && !hit.hitSameTeam) { Debug.LogWarning("Same team, not registering hit on target " + hit.target); return; } } if (HitManager.VerifyHit(ver, hit) && hit.target != null && hit.target.GetComponentInParent <IHittable>() != null) { hit.target.GetComponentInParent <IHittable>().Hit(hit); if (hit.target.GetComponentInParent <PlayerStats>() && hit.target != this.gameObject) { RpcConfirmHit(hit.damage); } } }
public void reset() { rb = this.GetComponent <Rigidbody2D>(); active = true; weapon = this.gameObject.AddComponent <Weapon>(); weapon.Set(2f, 0.2f, 3.0f, 10, 1, 0, 2); hb = this.GetComponent <HealthBar>(); MaxHealth = 100; CurrentHealth = 100; dead = false; hb.SetHealth(MaxHealth, CurrentHealth); speed = 1.5f; experience = 0; nextLevelXP = 500; HitManager man = GameObject.Find("[HitManager]").GetComponent <HitManager>(); man.SetPlayer(this.gameObject); text.text = ""; textTimer = 0; }
// Start is called before the first frame update void Start() { scoreObject = GameObject.Find("Miss Box").GetComponent <HitManager>(); }
// Start is called before the first frame update void Start() { hitManager = GameObject.FindObjectOfType <HitManager>(); countDownMeter = GetComponent <Image>(); }
public override void Update(float gameTime, Map map, ParticleManager pMan, Character[] c) { HitManager.CheckHit(this, c, pMan); KillMe(); }
// Use this for initialization void Start() { mp = this.GetComponent <MovementPlayer>(); sac = this.GetComponent <SelectAnotherCharacter>(); hm = GameObject.FindGameObjectWithTag("GameManager").GetComponent <HitManager>(); }
// Start is called before the first frame update void Start() { HitManager = GameObject.FindObjectOfType <HitManager>(); forceImg = GetComponent <Image>(); }
void Awake() { _instance = this; doOnce = true; }
// Use this for initialization void Start() { dllFileName = "GestureworksCore32.dll"; gmlFileName = "my_gestures.gml"; if(Application.isEditor==true){ windowName = "Unity - MyScene.unity - 2-Finished - PC, Mac & Linux Standalone*"; dllFilePath = Application.dataPath.Replace("/", "\\")+"\\Plugins\\GestureWorks\\Core\\"+dllFileName; gmlFilePath = Application.dataPath.Replace("/", "\\")+"\\MyScripts\\"+gmlFileName; } else { // Running exe windowName = "InteractiveClock"; dllFilePath = Application.dataPath.Replace("/", "\\")+"\\"+dllFileName; gmlFilePath = Application.dataPath.Replace("/", "\\")+"\\"+gmlFileName; } Core = new GestureWorks(); DllLoaded = Core.LoadGestureWorksDll(dllFilePath); Debug.Log("DllLoaded: "+DllLoaded); Core.InitializeGestureWorks(Screen.width, Screen.height); GmlLoaded = Core.LoadGML(gmlFilePath); WindowLoaded = Core.RegisterWindowForTouchByName(windowName); TouchPoints = new Dictionary<int, TouchCircle>(); Debug.Log("Interactive Clock"); Debug.Log("Is DLL Loaded: " + DllLoaded); Debug.Log("lIs GML Loaded: " + GmlLoaded.ToString()); Debug.Log("Is Window Loaded: " + WindowLoaded.ToString()); GestureObjects = new List<TouchObject>(); HitManager = new HitManager(Camera.main); InitializeGestureObjects(); }
protected virtual void Start() { this.forceFaceTo = FaceTo.None; this.faceTo = FaceTo.None; this.autoHit = this.GetComponent<AutoHit>(); this.spriteRanderer = this.GetComponent<SpriteRenderer>(); this.anim = this.GetComponent<Animator>(); this.rightScale = this.transform.localScale; this.leftScale = new Vector3(-this.rightScale.x, this.rightScale.y, this.rightScale.z); this.health = maxHealth; var hitManagers = this.GetComponentsInChildren<HitManager>(); foreach (var item in hitManagers) { if (item.tag == "HitColider") { this.hitManager = item; continue; } if (item.tag == "BackHitColider") { this.backHitManager = item; continue; } } AddItself(); }