From Test-Scratch-Wiki
जब पृष्ठभूमि () पर स्विच हो जाता है | |
when backdrop switches to [ v]
| |
Category | घटना |
Type | हैट |
Introduced in | २.० |
जब पृष्ठभूमि () पर स्विच हो जाता है ब्लॉक एक घटना ब्लॉक और एक हैट ब्लॉक है। इस ब्लॉक को पहनने वाली स्क्रिप्ट्स को मंच पर निर्दिष्ट पृष्ठभूमि पर स्विच करने के बाद ट्रिगर किया जाएगा।
उदाहरण उपयोग
- एक स्तर शुरू करना
switch backdrop to (level1 v) // मंच पर
when backdrop switches to [level1 v] //एक प्रेत में go to x: (0) y: (0)
- संदेश पर एक खेल
switch backdrop to (game over v) // मंच पर
when backdrop switches to [game over v] // एक प्रेत में hide
- मेनू के बीच स्विच करना
switch backdrop to (menu 3 v) // मंच पर
when backdrop switches to [menu 3 v] // एक प्रेत में go to [front v] layer //इसलिए मेनू आइटम सामने प्रदर्शित होता है show // इससे मेनू खुल जाता है
प्रत्यावर्तन
यह ब्लॉक लगातार स्क्रिप्ट चलाने के लिए रिकर्सन का उपयोग कर सकता है। एक उदाहरण इस प्रकार है:
when backdrop switches to [snow storm v] //रिकर्सन शुरू करने के लिए सबसे पहले एक पृष्ठभूमि स्विच को ट्रिगर किया जाना चाहिए . . . switch backdrop to (sunny day v) //जो अगली स्क्रिप्ट को ट्रिगर करेगा when backdrop switches to [sunny day v] . . . switch backdrop to (snow storm v) //चक्र फिर से शुरू होता है
समाधान
जब पृष्ठभूमि बदलती है, तो स्प्राइट जब बैकड्रॉप () ब्लॉक पर स्विच करता है, और पृष्ठभूमि के रूप में विशेषता को बदला जा रहा है (मतलब ब्लॉक के भीतर चयनित पृष्ठभूमि वह है जिस पर स्विच किया जा रहा है), स्प्राइट प्रतिक्रिया करेंगे और अपनी स्क्रिप्ट चलाएंगे। इस हैट ब्लॉक के साथ. इस स्थिति को दोहराने के लिए प्रसारण का उपयोग किया जा सकता है, हालांकि अतिरिक्त ब्लॉक जोड़े जाने के कारण थोड़ी देरी हो सकती है। निम्नलिखित एक समाधान है, जिसे अक्सर स्क्रैच १.x में उपयोग किया जाता है:
switch backdrop to (valley v) broadcast (valley v) when I receive [valley v] . . .
एक अन्य उपाय यह है:
when gf clicked wait until <not<(backdrop [name v]) = [backdrop1]>> forever if <(backdrop [name v]) = [backdrop1]> then ... wait until <not<(backdrop [name v]) = [backdrop1]>> end