void Update() { // If the shape isn't selected, target alpha will always be 0 (so it will be hidden) float myTargetAlpha = 0.0f; // Otherwise we'll display the shape and animate it if (isSelected && isVisible) { myTargetAlpha = 1.0f; } SpriteBehavior.FadeAlphaToTarget(this.gameObject, 4f, myTargetAlpha); GetComponent <SpriteRenderer>().sprite = spriteShapes[myCurrentSprintShape]; //ChangePaletteShape(); // if(isSelected) // { // myTargetScale = new Vector3(3.0f, 3.0f, 3.0f); // } // else // { // myTargetScale = new Vector3(2.0f, 2.0f, 2.0f); // } // // Vector3 scale = this.gameObject.transform.localScale; // if (scale.x < myTargetScale.x) scale.x += 0.1f; // if (scale.y < myTargetScale.y) scale.y += 0.1f; // if (scale.x > myTargetScale.x) scale.x -= 0.1f; // if (scale.y > myTargetScale.y) scale.y -= 0.1f; // // this.gameObject.transform.localScale = scale; }
void Update() { // Update our camera target based on whether we have a client connection or not *and* based on the platform if ((myNetworkManager.IsClientConnected()) && (m_globalSettings.ShowPalette) && (!isTakingScreenShot)) { setTarget(connectedTarget); } else { setTarget(disconnectedTarget); SpriteBehavior.HandleCameraZoom(1.0f, GetComponent <Camera>(), 0.1f, minOrthographicSize, maxOrthographicSize); } if (GetComponent <Camera>().orthographicSize >= 12f) { connectedTarget.transform.position = myStartingConnectedPosition; } if (activeTarget != null) { Vector3 pos = this.transform.position; pos.x = Mathf.SmoothDamp(pos.x, activeTarget.position.x, ref (velocity.x), smoothTime); pos.y = Mathf.SmoothDamp(pos.y, activeTarget.position.y, ref (velocity.y), smoothTime); this.transform.position = pos; ClampPosition(); } }
// Update is called once per frame void Update() { if (Input.GetButtonDown(ButtonName)) { AudioSource source = GetComponent <AudioSource>(); source.PlayOneShot(audioClips[TunnelBehavior.instance.themeIndex * 2 + audioClipIndex]); audioClipIndex = (audioClipIndex + 1) % 2; GetComponentInChildren <Animator>().SetTrigger("Slap"); GameObject spriteObject = Instantiate(SpriteTemplate, emitterTransform.position, Quaternion.identity) as GameObject; spriteObject.transform.SetParent(SpriteContainer, false); spriteObject.GetComponent <SpriteRenderer>().sprite = TunnelBehavior.instance.Sprites[Random.Range(0, TunnelBehavior.instance.Sprites.Length)]; SpriteBehavior spriteBehavior = spriteObject.GetComponent <SpriteBehavior>(); Vector2 dispersion = Random.insideUnitCircle * 5f; spriteBehavior.Advance = new Vector3(dispersion.x, dispersion.y, 4f); spriteBehavior.Lifetime = 3f; spriteBehavior.FromPlayer = true; } angle *= Mathf.Exp(-5f * Time.deltaTime); Vector3 eulerAngles = bodyTransform.localEulerAngles; eulerAngles.x = angle; bodyTransform.localEulerAngles = eulerAngles; }
protected static SpriteBehavior InitializeSpriteBehavior(SpriteBehavior behavior, ColliderType collider_type, string sprite_path = "", float x = 0, float y = 0) { var game_object = behavior.gameObject; game_object.transform.position = new Vector3(x, y); behavior.sprite_renderer = game_object.AddComponent<SpriteRenderer>(); behavior.sprite_path = sprite_path; if (!string.IsNullOrEmpty(sprite_path)) { behavior.sprites = Resources.LoadAll<Sprite>(sprite_path); behavior.sprite_renderer.sprite = behavior.sprites[0]; } switch (collider_type) { case SpriteBehavior.ColliderType.Box: behavior.collider2d = game_object.AddComponent<BoxCollider2D>(); break; case SpriteBehavior.ColliderType.Circle: behavior.collider2d = game_object.AddComponent<CircleCollider2D>(); break; case SpriteBehavior.ColliderType.Polygon: behavior.collider2d = game_object.AddComponent<PolygonCollider2D>(); break; } behavior.touching_anything = false; return behavior; }
// Use this for initialization void Start() { ID = this.gameObject.name; myCurrentSprintShape = 0; myTimer = 0f; // Ensure this item is hidden on startup, since it should only be displayed when the client is finally connected. SpriteBehavior.SetSpriteAlpha(this.gameObject, 0.0f); }
void Update() { Renderer render = GetComponent <Renderer>(); if (render != null) { render.enabled = isVisible; } if (!myNetworkManager.IsClientConnected()) { SpriteBehavior.FadeAlphaToTarget(this.gameObject, 1f, 0f); } }
void Update() { float myTargetAlpha = 0.0f; if (isVisible && myNetworkManager.IsClientConnected()) { myTargetAlpha = 1.0f; } myDebounceTimer += Time.deltaTime; if (myDebounceTimer > 60.0f) { myDebounceTimer = 0.0f; } SpriteBehavior.FadeAlphaToTarget(this.gameObject, 1f, myTargetAlpha); }
private void HandleTouchZooming(ref Touch touchZero, ref Touch touchOne) { // Find the position in the previous frame of each touch. Vector2 touchZeroPrevPos = touchZero.position - touchZero.deltaPosition; Vector2 touchOnePrevPos = touchOne.position - touchOne.deltaPosition; // Find the magnitude of the vector (the distance) between the touches in each frame. float prevTouchDeltaMag = (touchZeroPrevPos - touchOnePrevPos).magnitude; float touchDeltaMag = (touchZero.position - touchOne.position).magnitude; // Find the difference in the distances between each frame. float deltaMagnitudeDiff = prevTouchDeltaMag - touchDeltaMag; if (deltaMagnitudeDiff != 0f) { myDebounceTimer = 0.5f; SpriteBehavior.HandleCameraZoom(deltaMagnitudeDiff, inputCamera, m_cameraZoomSpeed, m_minCameraSize, m_maxCameraSize); } }
void Update() { float myTargetAlpha = 0.0f; if (isVisible && myNetworkManager.IsClientConnected()) { myTargetAlpha = 1.0f; } // If the user disconnects, reset to the default color when disconnected... if (isSelectedOnDisconnect && !myNetworkManager.IsClientConnected()) { isSelected = true; DeselectOtherPaletteObjects(); } HandleSelectionChanges(); SpriteBehavior.FadeAlphaToTarget(this.gameObject, 1f, myTargetAlpha); }
// Use this for initialization void Start() { myCurrentSprintShape = 0; myTimer = 0f; SpriteBehavior.SetSpriteAlpha(this.gameObject, 0.0f); }
// Update is called once per frame void Update() { updateChangingFloatConstants(); uOffsetPerSecond.Update(); vOffsetPerSecond.Update(); displacementAnglePerSecond.Update(); uvOffset.x = Repeat(uvOffset.x + uOffsetPerSecond.Value * Time.deltaTime, 1f); uvOffset.y = Repeat(uvOffset.y + vOffsetPerSecond.Value * Time.deltaTime, 1f); TunnelMaterial.SetVector("_UVOffset", uvOffset); displacementAngle = Repeat(displacementAngle + displacementAnglePerSecond.Value * Time.deltaTime, Mathf.PI * 2); Vector4 displacement = new Vector4(); displacement.x = Mathf.Cos(displacementAngle) * DisplacementRadius; displacement.y = Mathf.Sin(displacementAngle) * DisplacementRadius; SpriteMaterial.SetVector("_Displacement", displacement); TunnelMaterial.SetVector("_Displacement", displacement); spriteCountdown -= Time.deltaTime; if (spriteCountdown <= 0) { spriteCountdown = Random.Range(MinSpriteCountdown, MaxSpriteCountdown); Vector2 position = Random.insideUnitCircle * MaxSpriteRadius; GameObject spriteObject = Instantiate(SpriteTemplate, new Vector3(position.x, position.y, 50f), Quaternion.identity) as GameObject; spriteObject.transform.SetParent(SpriteContainer, false); spriteObject.GetComponent <SpriteRenderer>().sprite = Sprites[Random.Range(0, Sprites.Length)]; SpriteBehavior spriteBehavior = spriteObject.GetComponent <SpriteBehavior>(); spriteBehavior.Advance = SpriteAdvance; spriteBehavior.Lifetime = 4.5f; } foreach (Transform sprite in SpriteContainer.transform) { if (sprite.GetComponent <SpriteBehavior>().FromPlayer) { continue; } foreach (Transform spritePlayer in SpriteContainer.transform) { if (!spritePlayer.GetComponent <SpriteBehavior>().FromPlayer) { continue; } Vector3 offset = sprite.localPosition - spritePlayer.localPosition; float distance = offset.magnitude; if (distance < 2f) { Instantiate(WordTemplates[wordIndex], spritePlayer.localPosition + offset / 2f, Quaternion.identity); wordIndex = (wordIndex + 1) % WordTemplates.Length; Destroy(sprite.gameObject); Destroy(spritePlayer.gameObject); GetComponent <AudioSource>().PlayOneShot(wordClip); } } } bgCountdown -= Time.deltaTime; if (bgCountdown <= 0) { bgCountdown = 120f; GetComponent <MeshRenderer>().sharedMaterial.mainTexture = BgTextures[bgIndex]; bgIndex = (bgIndex + 1) % BgTextures.Length; themeIndex = (themeIndex + 1) % 2; themeSource.clip = themeClips[themeIndex]; themeSource.Play(); float hue = Random.Range(0f, 1f); TunnelMaterial.SetColor("_ColorR", HSVToRGB( hue, Random.Range(0.8f, 1f), Random.Range(0.8f, 1f) )); hue = Mathf.Repeat(hue + Random.Range(0.2f, 0.4f), 1f); TunnelMaterial.SetColor("_ColorG", HSVToRGB( hue, Random.Range(0.8f, 1f), Random.Range(0.8f, 1f) )); hue = Mathf.Repeat(hue + Random.Range(0.2f, 0.4f), 1f); TunnelMaterial.SetColor("_ColorB", HSVToRGB( hue, Random.Range(0.8f, 1f), Random.Range(0.8f, 1f) )); } }
void Start() { // Ensure this item is hidden on startup, since it should only be displayed when the client is finally connected. SpriteBehavior.SetSpriteAlpha(this.gameObject, 0.0f); }
public static RigidbodyBehavior InitializeRigidbodyBehavior(RigidbodyBehavior behavior, SpriteBehavior.ColliderType collider_type, string sprite_path, float x = 0, float y = 0) { InitializeSpriteBehavior(behavior, collider_type, sprite_path, x, y); behavior.rigid_body = behavior.gameObject.AddComponent<Rigidbody2D>(); return behavior; }