From ff569b86fe0694f3041b36ede2fc70222d0365ac Mon Sep 17 00:00:00 2001 From: alsarazin Date: Tue, 10 Nov 2015 19:55:24 -0500 Subject: [PATCH] Destroyed the rockets when not visible/colliding --- Assets/Prefabs/rocket.prefab | 24 +++++++++++++++++++++--- Assets/RocketBehaviour.cs | 18 ++++++++++++++---- Assets/Scripts/FireScript.cs | 3 +++ ProjectSettings/ProjectSettings.asset | 14 -------------- 4 files changed, 38 insertions(+), 21 deletions(-) diff --git a/Assets/Prefabs/rocket.prefab b/Assets/Prefabs/rocket.prefab index 1bd89d8..b2a5c3d 100644 --- a/Assets/Prefabs/rocket.prefab +++ b/Assets/Prefabs/rocket.prefab @@ -11,6 +11,7 @@ GameObject: - 212: {fileID: 21212352} - 50: {fileID: 5027078} - 114: {fileID: 11450384} + - 61: {fileID: 6184698} m_Layer: 0 m_Name: rocket m_TagString: Untagged @@ -40,12 +41,25 @@ Rigidbody2D: m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: .0500000007 - m_GravityScale: 1 - m_IsKinematic: 1 + m_GravityScale: 0 + m_IsKinematic: 0 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 0 +--- !u!61 &6184698 +BoxCollider2D: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 141294} + m_Enabled: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Size: {x: .239999995, y: .100000001} --- !u!114 &11450384 MonoBehaviour: m_ObjectHideFlags: 1 @@ -92,12 +106,16 @@ Prefab: m_Modifications: - target: {fileID: 0} propertyPath: m_IsKinematic - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: speed value: 5 objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_GravityScale + value: 0 + objectReference: {fileID: 0} m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 141294} diff --git a/Assets/RocketBehaviour.cs b/Assets/RocketBehaviour.cs index c11757b..530754d 100644 --- a/Assets/RocketBehaviour.cs +++ b/Assets/RocketBehaviour.cs @@ -3,12 +3,22 @@ using System.Collections; public class RocketBehaviour : MonoBehaviour { - void Start () + private bool isAPlayerRocket; + + //Destroys the rocket when no longer visible + void OnBecameInvisible() { + Destroy(gameObject); + } + //Destroys the rocket when it hits something (except Player when its his rocket) + void OnCollisionEnter2D(Collision2D collision) + { + if(!isAPlayerRocket || collision.gameObject.tag != "Player") + Destroy(gameObject); } - //TODO : kill the rocket when exiting camera view - void Update () - { + public void SetProperty(bool playerRocket) + { + isAPlayerRocket = playerRocket; } } diff --git a/Assets/Scripts/FireScript.cs b/Assets/Scripts/FireScript.cs index 3033f7c..b9b193e 100644 --- a/Assets/Scripts/FireScript.cs +++ b/Assets/Scripts/FireScript.cs @@ -20,6 +20,9 @@ public class FireScript : MonoBehaviour { { //Instantiate new rocket Rigidbody2D rocketClone = (Rigidbody2D)Instantiate(rocket, transform.position, Quaternion.identity); + + //Sets rocket to be the player's + rocketClone.gameObject.GetComponent().SetProperty(true); if (!facingRight) { diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 24b2ed9..f3abab5 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -8,7 +8,6 @@ PlayerSettings: defaultScreenOrientation: 4 targetDevice: 2 targetResolution: 0 - useOnDemandResources: 0 accelerometerFrequency: 60 companyName: DefaultCompany productName: Laboratoire_2_Equipe_2 @@ -29,7 +28,6 @@ PlayerSettings: androidShowActivityIndicatorOnLoading: -1 iosAppInBackgroundBehavior: 0 displayResolutionDialog: 1 - iosAllowHTTPDownload: 1 allowedAutorotateToPortrait: 1 allowedAutorotateToPortraitUpsideDown: 1 allowedAutorotateToLandscapeRight: 1 @@ -137,15 +135,6 @@ PlayerSettings: iOSLaunchScreenFillPct: 100 iOSLaunchScreenSize: 100 iOSLaunchScreenCustomXibPath: - iOSLaunchScreeniPadType: 0 - iOSLaunchScreeniPadImage: {fileID: 0} - iOSLaunchScreeniPadBackgroundColor: - serializedVersion: 2 - rgba: 0 - iOSLaunchScreeniPadFillPct: 100 - iOSLaunchScreeniPadSize: 100 - iOSLaunchScreeniPadCustomXibPath: - iOSDeviceRequirements: [] AndroidTargetDevice: 0 AndroidSplashScreenScale: 0 androidSplashScreen: {fileID: 0} @@ -235,8 +224,6 @@ PlayerSettings: ps4SdkOverride: ps4BGMPath: ps4ShareFilePath: - ps4ShareOverlayImagePath: - ps4PrivacyGuardImagePath: ps4NPtitleDatPath: ps4RemotePlayKeyAssignment: -1 ps4RemotePlayKeyMappingDir: @@ -258,7 +245,6 @@ PlayerSettings: ps4attribMoveSupport: 0 ps4attrib3DSupport: 0 ps4attribShareSupport: 0 - ps4IncludedModules: [] monoEnv: psp2Splashimage: {fileID: 0} psp2NPTrophyPackPath: