From Test-Scratch-Wiki
| एक्स स्थिति | |
x position
| |
| Category | गति |
| Type | रिपोर्टर |
एक्स स्थिति ब्लॉक एक रिपोर्टर ब्लॉक और एक [मोशन ब्लॉक]] है। ब्लॉक अपने स्प्राइट का x मान रखता है, जो मंच पर स्प्राइट का क्षैतिज स्थान है। ब्लॉक को स्टेज मॉनिटर के रूप में प्रदर्शित किया जा सकता है।
उदाहरण उपयोग
एक्स पोजीशन ब्लॉक के कुछ सामान्य उपयोग हैं:
- स्क्रीन स्थिति के माध्यम से क्रियाएँ ट्रिगर करना:
forever
wait until <(x position) > [220]>
change [Hits v] by (1)
end
एक अन्य उपयोग स्क्रैच के डिफ़ॉल्ट स्लाइडर का उपयोग किए बिना चल स्लाइडर के आधार पर मान सेट करना है, स्क्रिप्ट के साथ स्लाइडर की एक्स स्थिति पर मान सेट करना:
set [worms v] to (x position)
- गतिविधि की जांच के लिए एक्स स्थिति की तुलना रिकॉर्ड से करना:
when green flag clicked
set [x_pos prev v] to (x position)
set drag mode [draggable v] //स्प्राइट को स्थानांतरित करना आसान बनाता है
forever
if <not <(x_pos prev) = (x position)>> then
say [My X position moved!] for (2) seconds //यदि x स्थिति चली गई, तो कुछ कहें
set [x_pos prev v] to (x position)
end
end
- स्प्राइट के एक्स मूवमेंट को लगातार संग्रहीत करना ताकि इसे बाद में फिर से लागू किया जा सके
when green flag clicked //स्क्रिप्ट केवल स्प्राइट में काम करती है
delete all of [x positions v]
delete all of [y positions v]
say [Move your mouse and I will reenact the movement!] for (2) seconds
say [Go!] for (1) seconds
repeat (50)//प्रत्येक ०.१ सेकंड के लिए एक की दर से ५० निर्देशांक रिकॉर्ड करता है
go to (mouse-pointer v)
add (x position) to [x positions v]
add (y position) to [y positions v]
wait (0.1) seconds
end
set [counter v] to [1]
say [I will reenact it for you now!] for (2) seconds
repeat (50)
go to x:(item (counter) of [x positions v]) y:(item (counter) of [y positions v])
wait (0.1) seconds
change [counter v] by (1)
end
- किसी स्प्राइट की गति को उसके निर्देशांक के आधार पर बदलना।
Workaround
() सेंसिंग ब्लॉक के साथ एक्स स्थिति ढूंढकर ब्लॉक को दोहराया जा सकता है:
([x position v] of (wanted sprite v))
हालाँकि, चूँकि इस समाधान के लिए ([ v] of ( v)) ब्लॉक की आवश्यकता होती है, इसका उपयोग वर्तमान स्प्राइट की X स्थिति प्राप्त करने के लिए नहीं किया जा सकता है और इसे किसी अन्य स्प्राइट से किया जाना चाहिए, जब तक कि यह समाधान न हो इस्तेमाल किया गया:
([x position v] of (join [wanted sprite][]))