{"id":1546,"date":"2019-11-20T15:37:14","date_gmt":"2019-11-20T15:37:14","guid":{"rendered":"https:\/\/docs.sisus.co\/power-inspector\/?p=1546"},"modified":"2021-03-24T17:51:13","modified_gmt":"2021-03-24T17:51:13","slug":"requiretrigger","status":"publish","type":"post","link":"https:\/\/docs.sisus.co\/power-inspector\/attributes\/requiretrigger\/","title":{"rendered":"RequireTrigger"},"content":{"rendered":"<p>When added before a component class will make sure that whenever the component with the attribute is added to GameObjects, a <a href=\"https:\/\/docs.unity3d.com\/Manual\/CollidersOverview.html\"><strong>collider<\/strong><\/a> will also be present on the same GameObject.<\/p>\n<p>In addition makes sure that the <a href=\"https:\/\/docs.unity3d.com\/ScriptReference\/Collider-isTrigger.html\"><strong>isTrigger<\/strong><\/a> property of the collider will match your desired value (<strong>default<\/strong>: <strong>True<\/strong>).<\/p>\n<h2>Attribute Target<\/h2>\n<p>Component class<\/p>\n<h2>Example<\/h2>\n<pre>using System;\r\nusing UnityEngine;\r\nusing Sisus.Attributes;\r\n\r\n[RequireTrigger, DisallowMultipleComponent]\r\npublic class Checkpoint : MonoBehaviour\r\n{\r\n\tpublic static Action&lt;int&gt; OnCheckpointSaved;\r\n\r\n\t[Min(1)]\r\n\tpublic int checkpointId = 1;\r\n\r\n\tvoid Reset()\r\n\t{\r\n\t\tgameObject.isStatic = true;\r\n\t}\r\n\r\n\tvoid OnTriggerEnter(Collider other)\r\n\t{\r\n\t\tif(PlayerPrefs.GetInt(\"Checkpoint\", 0) &lt; checkpointId)\r\n\t\t{\r\n\t\t\tPlayerPrefs.SetInt(\"Checkpoint\", checkpointId);\r\n\r\n\t\t\tif(OnCheckpointSaved != null)\r\n\t\t\t{\r\n\t\t\t\tOnCheckpointSaved(checkpointId);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}<\/pre>\n<h2>Example Result<\/h2>\n<p><img loading=\"lazy\" class=\"alignnone size-full wp-image-1541\" src=\"https:\/\/docs.sisus.co\/power-inspector\/wp-content\/uploads\/2019\/11\/unity-RequireCollider-attribute.png\" alt=\"\" width=\"1119\" height=\"300\" srcset=\"https:\/\/docs.sisus.co\/power-inspector\/wp-content\/uploads\/sites\/2\/2019\/11\/unity-RequireCollider-attribute.png 1119w, https:\/\/docs.sisus.co\/power-inspector\/wp-content\/uploads\/sites\/2\/2019\/11\/unity-RequireCollider-attribute-300x80.png 300w, https:\/\/docs.sisus.co\/power-inspector\/wp-content\/uploads\/sites\/2\/2019\/11\/unity-RequireCollider-attribute-1024x275.png 1024w, https:\/\/docs.sisus.co\/power-inspector\/wp-content\/uploads\/sites\/2\/2019\/11\/unity-RequireCollider-attribute-768x206.png 768w\" sizes=\"(max-width: 1119px) 100vw, 1119px\" \/><\/p>\n<p>&nbsp;<\/p>\n<blockquote><p><strong>See also: <a href=\"https:\/\/docs.sisus.co\/power-inspector\/attributes\/requirecollider\/\">RequireCollider<\/a><\/strong><\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>When added before a component class will make sure that whenever the component with the attribute is added to GameObjects, a collider will also be present on the same GameObject. In addition makes sure that the isTrigger property of the collider will match your desired value (default: True). Attribute Target Component class Example using System; ..<\/p>\n<div class=\"clear-fix\"><\/div>\n<p><a href=\"https:\/\/docs.sisus.co\/power-inspector\/attributes\/requiretrigger\/\" title=\"read more\">Read more<\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[26],"tags":[],"_links":{"self":[{"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/posts\/1546"}],"collection":[{"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/comments?post=1546"}],"version-history":[{"count":2,"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/posts\/1546\/revisions"}],"predecessor-version":[{"id":1840,"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/posts\/1546\/revisions\/1840"}],"wp:attachment":[{"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/media?parent=1546"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/categories?post=1546"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/docs.sisus.co\/power-inspector\/wp-json\/wp\/v2\/tags?post=1546"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}