/* * void OnParticleCollision(GameObject obj) * { * if(obj.tag == gameObject.tag) * { * ElementFusion(obj); * } * } */ private void ElementFusion(GameObject target) { ElementParameters targetScript = target.GetComponent <ElementParameters>(); ElementParameters selfScript = gameObject.GetComponent <ElementParameters>(); // 衝突判定が同時に実行されるため、片方のスクリプトが実行された時点で // 両方の衝突判定フラグをTrueにし、片方のフラグがTrueの場合は // 衝突判定実施後であるため処理をスキップする if (selfScript.isHitted || targetScript.isHitted) { selfScript.isHitted = false; targetScript.isHitted = false; return; } // エレメントレベルが大きいものを残す int targetLevel = targetScript.GetElementLevel(); int elementLevel = selfScript.GetElementLevel(); bool isTargetDestroy; if (elementLevel != targetLevel) { isTargetDestroy = elementLevel > targetLevel; FusinoAndDestroy(target, isTargetDestroy); return; } isTargetDestroy = int.Parse(gameObject.name) < int.Parse(target.name); FusinoAndDestroy(target, isTargetDestroy); return; }
private void FusinoAndDestroy(GameObject target, bool isTargetDestroy) { ElementParameters targetScript = target.GetComponent <ElementParameters>(); ElementParameters selfScript = gameObject.GetComponent <ElementParameters>(); int targetLevel = targetScript.GetElementLevel(); int elementLevel = selfScript.GetElementLevel(); if (isTargetDestroy) { Destroy(target); gameObject.GetComponent <ElementParameters>().IncrementElementLevel(); particleEmission.rateOverTime = 2.0f * particleEmission.rateOverTime.constant; targetScript.hit(); selfScript.hit(); return; } Destroy(gameObject); targetScript.IncrementElementLevel(); ParticleSystem targetParticle = target.GetComponent <ParticleSystem>(); //ParticleSystem.MainModule targetParticleMain = targetParticle.main; ParticleSystem.EmissionModule targetParticleEmission = targetParticle.emission; targetParticleEmission.rateOverTime = 2.0f * targetParticleEmission.rateOverTime.constant; targetScript.hit(); selfScript.hit(); return; }
public async Task GetReleaseTablesTest() { Client client = new Client(_apiKey); var parameters = new ElementParameters { Id = 53, }; var result = await client.GetReleaseTables(parameters); Assert.AreNotEqual(null, result); Assert.IsTrue(result.Count > 0); }
private bool IsElementInTopPartOfWebsite(ElementParameters elementParameters) { int windowHeight = driver.Manage().Window.Size.Height; return(elementParameters.Location.Y + elementParameters.Size.Height <= windowHeight / 2); }
private bool IsElementInRightPartOfWebsite(ElementParameters elementParameters) { int windowWidth = driver.Manage().Window.Size.Width; return(elementParameters.Location.X + elementParameters.Size.Width >= windowWidth / 2); }
public void Reset() { _parameters = ElementParameters.Create(); _items = ElementItemsCollection.Create(); }
/// ====================================================================== private static ElementGenerationSettings CreateSettings(ElementParameters parameters, ElementDraft draft) { var result = ElementGenerationSettings.Create(); var position = draft.pivot; var angles = Quaternion.LookRotation(draft.forward, draft.up).eulerAngles; var scale = Vector3.one; var isHorizontalMrror = parameters.isHorizontalMrror; if (draft.isHorizontalMrror) { isHorizontalMrror = !isHorizontalMrror; } var isVerticalMirror = parameters.isVerticalMirror; if (draft.isVerticalMirror) { isVerticalMirror = !isVerticalMirror; } if (Utils.ApproximatelyZero(parameters.length)) { scale.x = 1f; } else if (Utils.ApproximatelyZero(draft.length)) { scale.x = 0f; } else { scale.x = draft.length / parameters.length; } if (Utils.ApproximatelyZero(parameters.height)) { scale.y = 1f; } else if (Utils.ApproximatelyZero(draft.height)) { scale.y = 0f; } else { scale.y = draft.height / parameters.height; } if (Utils.ApproximatelyZero(draft.forwardScale)) { scale.z = 1f; } else { scale.z = draft.forwardScale; } if (isHorizontalMrror) { scale.x *= -1f; position -= draft.right * parameters.length * scale.x; } if (isVerticalMirror) { scale.y *= -1f; position -= draft.up * parameters.height * scale.y; } result.parent = draft.parent; result.position = position; result.angles = angles; result.scale = scale; return(result); }