फ्लैश के साथ हवा का प्रभाव CS3 Math.random ()
अब जबकि हमारे पास हमारे फ्लैश में बर्फ के टुकड़े गिर रहे हैंआर कण प्रणाली, चलो ActionScript 3 कोड को थोड़ा संशोधित करें। हमारी परत सीधे नीचे गिरती है। लेकिन, जब तक पूरी तरह से हवा नहीं होती है, तब तक ज्यादातर गुच्छे तिरछी होकर नीचे की ओर जाते हैं। तो चलिए कुछ गणित का इस्तेमाल करते हैं ताकि हमारी परतें सही हो जाए। अधिक यथार्थवाद को जोड़ने के लिए, हम चाहते हैं कि क्षैतिज गति की मात्रा में परिवर्तन हो क्योंकि बर्फ का टुकड़ा मंच के नीचे रास्ता बनाता है।

याद रखें, कि इस श्रृंखला में हमारे पहले के एक ट्यूटोरियल में, हमने विभिन्न अवस्थाओं में क्षैतिज रूप से मंच के शीर्ष पर गुच्छे रखे थे। हमने प्रत्येक फ्लेक के लिए एक्स स्थिति के लिए अलग-अलग मान सेट करके ऐसा किया। इसलिए इस ट्यूटोरियल में, हम एनीमेशन में क्षैतिज गति को नियंत्रित करने के लिए उसी _Snowflake.x संपत्ति का फिर से उपयोग कर सकते हैं।

दूसरे, जब हमने अपनी परत बनाई, तो हमने फ्लेक के शुरुआती X और Y स्थान को एक यादृच्छिक संख्या में सेट किया।

_Snowflake.x = Math.random () * 510;
_Snowflake.y = Math.random () * 40;

यादृच्छिक क्षैतिज गति की मात्रा को नियंत्रित करने के लिए हम उसी Math.random () का उपयोग कर सकते हैं। क्या आप अनुमान लगाते हैं कि आगे क्या आता है?

हम जानते हैं कि हमारी फ्लैश फिल्म के प्रत्येक फ्रेम पर, हम बर्फबारी समारोह कहते हैं।

stage.addEventListener (Event.ENTER_FRAME, बर्फबारी);

यह फंक्शन हर फ्रेम के लिए_सालफ्लेक.य संपत्ति 10 से बढ़ाता है। यह वही है जो मंच के नीचे परत को हिलाता है।

_Snowflake.y + = 10;

लेकिन हमारे लिए सूक्ष्म क्षैतिज गति को देखने के लिए यह बहुत तेज़ है जिसे हम आगे जोड़ देंगे। तो, चलो 10 को 5 में बदलकर इसे थोड़ा धीमा कर दें।

_Snowflake.y + = 5;

अब हम फ्लैक को क्षैतिज रूप से दाईं ओर ले जाने के लिए समान कोड का उपयोग कर सकते हैं। हमें बस इतना करना है कि the_Snowflake.y to_Snowflake.x को बदलना होगा।

_Snowflake.x + = 10;

अब स्नोफ्लेक हमारी फ्लैश मूवी में प्रत्येक फ्रेम पर 10 पिक्सेल को दाईं ओर और 5 पिक्सेल नीचे ले जाएगा। लेकिन, यह अधिक यथार्थवादी होगा यदि स्नोफ्लेक का क्षैतिज आंदोलन अधिक यादृच्छिक था क्योंकि यह मंच के नीचे रास्ता बनाता है। हम इसे 0 और 9 के बीच यादृच्छिक संख्या के साथ 10 को प्रतिस्थापित करके कर सकते हैं। हम ऐसा करने के लिए Math.random () का उपयोग करेंगे।

_Snowflake.x + = Math.random () * 10;

अगला, हम इस नए कोड को स्नोफॉल फ़ंक्शन में जोड़ते हैं और हमें यह मिलता है।

अगर (_Snowflake.y> 370)
{stage.removeEventListener (Event.ENTER_FRAME, बर्फबारी); }
अन्य
{_सावलफेक .y + = 5;
_Snowflake.x + = Math.random () * 10 ;;

लेकिन अब हम परत को दाईं ओर ले जा रहे हैं, यह अंततः स्क्रीन के दाईं ओर से आगे निकल सकता है। याद रखें कि यदि हम मंच से नीचे गिरते हैं तो हमने बर्फ के टुकड़े को रोक दिया।

अगर (_Snowflake.y> 370)

हम इसे रोक भी सकते हैं अगर यह मंच के दाईं ओर से आगे निकल जाए। आइए इसे हमारे सशर्त विवरण में जोड़ें। क्योंकि हम चाहते हैं कि एनीमेशन बंद हो जाए या तो इनमें से पहली या दूसरी स्थिति सही हो, हम उपयोग कर सकते हैं || इफ स्टेटमेंट में दो शर्तों के बीच ऑपरेटर।

if (_Snowflake.y> 370 || _Snowflake.x> 550)

यदि इनमें से एक भी स्थिति सत्य है, तो Flash ENTER_FRAME ईवेंट श्रोता को हटा देगा।

यहाँ हमारा नया कोड है।
stage.addEventListener (Event.ENTER_FRAME, बर्फबारी);

var _Snowflake: mcSnowflake;

_Snowflake = new mcSnowflake ();
addChild (_Snowflake);
_Snowflake.x = Math.random () * 510;
_Snowflake.y = Math.random () * 40;

समारोह बर्फबारी (घटना: घटना): शून्य
{
if (_Snowflake.y> 370 || _Snowflake.x> 550)
{stage.removeEventListener (Event.ENTER_FRAME, बर्फबारी); }
अन्य
{_सावलफेक .y + = 5; _Snowflake.x + = Math.random () * 10; }
}


जब आप अपनी फिल्म को टेक्स्ट करते हैं, तो स्नोफ्लेक अब अपने क्षैतिज आंदोलन को बदल देगा क्योंकि यह मंच के नीचे तक गिरता है। स्नोस्कैन 6.फ़्ला के रूप में अपने स्नो दृश्य को सहेजें।

कॉपीराइट 2018 एडोब सिस्टम्स शामिल। सभी अधिकार सुरक्षित। Adobe उत्पाद स्क्रीन शॉट (ओं) को Adobe सिस्टम शामिल से अनुमति के साथ पुनर्मुद्रित किया गया। Adobe, Photoshop, Photoshop एल्बम, Photoshop तत्व, Illustrator, InDesign, GoLive, Acrobat, Cue, Premiere Pro, Premiere Elements, Bridge, After Effects, InCopy, Dreamweaver, Flash, ActionScript, आतिशबाजी, योगदान, कैप्टिनेट, फ्लैश कैटालिस्ट और फ्लैश पेपर संयुक्त राज्य अमेरिका और / या अन्य देशों में शामिल Adobe Systems का या तो [a] पंजीकृत ट्रेडमार्क [s] या ट्रेडमार्क [s] है।


वीडियो निर्देश: फ्लैश और Actionscript 3 ट्यूटोरियल: जनरेट कर रहा है एक यादृच्छिक संख्या (अप्रैल 2024).