दस्तावेज़ीकरण

⚠️ चेतावनी: Gameeky अभी भी विकास के शुरुआती चरण में है और इसलिए चीजें बदल सकती हैं।

📝 ध्यान दें: यह दस्तावेज़ Gameeky द्वारा की जा सकने वाली हर चीज़ पर एक विस्तृत अनुशिक्षण नहीं है, लेकिन यह आरंभ करने के लिए पर्याप्त दिशा-निर्देश प्रदान करता है।

विषय

  1. परिचय
  2. स्थापना
  3. थीम समूह
  4. अवलोकन
  5. लॉन्चर
  6. प्लेयर
  7. सहयोगात्मक गेमप्ले
  8. दृश्य संपादक
  9. तत्व संपादक
  10. कोड संपादक और LOGO-जैसा कोड
  11. प्लग-इन

परिचय

Gameeky युवा शिक्षार्थियों और शिक्षकों को सहयोगात्मक खेल और सीखने के अनुभव बनाने और तलाशने की सुविधा देता है। अधिक विशेष रूप से:

📝 ध्यान दें: यह गेम इंजन के आकार का एक शिक्षण उपकरण है। यह कोई पेशेवर गेम इंजन नहीं है। यदि आप पेशेवर वीडियो गेम बनाने के लिए किसी टूल की तलाश में हैं, तो कृपया Godot गेम इंजन पर विचार करें।

स्थापना

अनुशंसित स्थापना विधि सिस्टम के सॉफ्टवेयर केंद्र के माध्यम से है, उदाहरण के लिए, GNOME SoftwareGameeky खोजें और इसे स्थापित करें। वैकल्पिक रूप से, इसे Flathub से भी स्थापित किया जा सकता है। इसी तरह, Gameeky खोजें और वेबसाइट के निर्देशों का पालन करें।

अंततः, इसे टर्मिनल से भी स्थापित किया जा सकता है:

flatpak --user install flathub dev.tchx84.Gameeky

थीम समूह

Gameeky विभिन्न रुचियों के लिए पूर्वनिर्धारित निर्माण खंड के समूह प्रदान करता है, उदाहरण के लिए, मध्ययुगीन काल्पनिक दुनिया में स्थापित एक कृषि भूमिका निभाने वाला [खेल] (https://github.com/tchx84/FreedomValley)। एक थीम समूह में शामिल हैं:

इन निर्माण खंड का उपयोग तदनुकूल दृश्य, नए खेल और कई शिक्षण सामग्री बनाने के लिए पुन: उपयोग किया जा सकता है।

अनुशंसित स्थापना विधि सिस्टम के सॉफ्टवेयर केंद्र के माध्यम से है, उदाहरण के लिए, GNOME Software। थीम समूह सॉफ्टवेयर सेंटर पृष्ठ से ऐडऑन के रूप में पेश किए जाते हैं। वैकल्पिक रूप से, इसे Flathub से भी स्थापित किया जा सकता है। इसी तरह, थीम समूह वेबसाइट से ऐडऑन के रूप में पेश किए जाते हैं। ऐडऑन का चयन करें और वेबसाइट के निर्देशों का पालन करें।

अंततः, समूहों को टर्मिनल से भी स्थापित किया जा सकता है:

flatpak --user remote-ls flathub | grep dev.tchx84.Gameeky.ThematicPack
flatpak --user install flathub dev.tchx84.Gameeky.ThematicPack.FreedomValley

अवलोकन

Gameeky पैकेज पांच मुख्य घटक प्रदान करता है:

  1. लॉन्चर मुख्य घटक है जहां सभी थीम समूहों और परियोजनाओं को खोजा और लॉन्च किए जा सकता हैं।
  2. प्लेयर वह जगह है जहां खेल खेले जा सकते हैं और शामिल हो सकते हैं।
  3. दृश्य संपादक वह जगह है जहां दृश्य बनाए और संपादित किए जा सकते हैं।
  4. तत्व संपादक वह जगह है जहाँ तत्वों को बनाया और संपादित किया जा सकता हैं।
  5. कोड संपादक वह जगह है जहां LOGO जैसा अनुभव प्राप्त किया जा सकता है।

लॉन्चर

लॉन्चर Gameeky शुरुआती बिंदु के रूप में कार्य करता है। यह ~/Gameeky निर्देशिका के अंतर्गत स्थित ऐडऑन और परियोजनाओं के रूप में स्थापित थीम समूहों को प्रबंधित करने का एक आसान तरीका प्रदान करता है। प्रबंधक सभी बुनियादी प्रबंधन कार्यों का समर्थन करता है:

परियोजनाएं साझाकरण

लॉन्चर परियोजनाओं को साझा करने का एक सरल तरीका प्रदान करता है। किसी परियोजना को निर्यात करने के लिए, इन चरणों का पालन करें:

  1. लॉन्चर से, परियोजना के विकल्प बटन पर क्लिक करें और निर्यात विकल्प चुनें।
  2. संवाद निर्देशों का पालन करें।

किसी परियोजना को आयात करने के लिए, इन चरणों का पालन करें:

  1. लॉन्चर से, मेनू पर जाएं और आयात विकल्प चुनें।
  2. संवाद निर्देशों का पालन करें।

प्लेयर

प्लेयर खेल की दुनिया का एक दृश्य प्रतिनिधित्व और उस दुनिया के साथ सहभागिता करने का साधन प्रदान करता है।

खेल शुरू करने के लिए, लॉन्चर से परियोजना के खेलें बटन पर क्लिक करें। यह उस परियोजना के लिए तयशुदा दृश्य प्रारंभ करेगा। प्रत्येक थीम समूह और परियोजना एक तयशुदा दृश्य के साथ आता है। उसी परियोजना से अन्य दृश्य चलाने के लिए, इन चरणों का पालन करें:

  1. लॉन्चर से, परियोजना के विकल्प बटन पर क्लिक करें और खेलें विकल्प चुनें।
  2. प्लेयर से, मेनू पर जाएं और नया विकल्प चुनें।
  3. निर्माण संवाद से, दृश्य फाइल का चयन करें और बनाएं बटन पर क्लिक करें।

खेल में स्क्रीन तत्व

एक बार खेल में, दृश्य अधिकांश स्क्रीन पर आ जाता है लेकिन अन्य तत्व भी होते हैं।

HUD एक इंटरफ़ेस है जो स्क्रीन के निचले केंद्र में रखा गया है। इस तत्व का उपयोग उपयोक्ता के चरित्र आंकड़ों को देखने के लिए किया जाता है। यह निम्नलिखित भागों से बना है:

एक अन्य तत्व संवाद दर्शक है। इस दर्शक को स्क्रीन के नीचे रखा गया है और इसका उपयोग खेल-में संवादों को प्रदर्शित करने के लिए किया जाता है, उदाहरण के लिए, खेल चरित्र या कथावाचक का संदेश। यह निम्नलिखित भागों से बना है:

नियंत्रण

एक बार खेल में, उपयोक्ता के चरित्र को दो तरीकों से नियंत्रित किया जा सकता है:

कार्रवाइयां

उपयोक्ता का चरित्र खेल की दुनिया के साथ बातचीत करने के लिए कई कार्रवाइयां कर सकता है:

फाइलें सहेजें

खेल की स्थिति को किसी भी क्षण सहेजा जा सकता है और बाद में पुनर्स्थापित किया जा सकता है। सहेजी गयी फाइलें दृश्य की पूर्ण प्रतियां हैं और इसलिए नियमित दृश्य फाइलें हैं।

  1. खेल की स्थिति को सहेजने के लिए, मेनू पर जाएं और ऐसे सहेजें… विकल्प चुनें।
  2. खेल की स्थिति को पुनर्स्थापित करने के लिए, किसी दृश्य को खोलने के लिए ऊपर वर्णित समान चरणों का पालन करें।

सहयोगात्मक गेमप्ले

Gameeky को शुरुआत से ही सहयोगात्मक अनुभव बनाने और साझा करने के लिए डिज़ाइन किया गया था। इससे बनाये गये सभी खेल सहयोगपूर्वक खेले जा सकते हैं। कोई विशेष आवश्यकताएं नहीं हैं। हालाँकि किसी सहयोगात्मक खेल में कितने उपयोक्ता शामिल हो सकते हैं, इसकी कोई सैद्धांतिक सीमा नहीं है, लेकिन तकनीकी सीमाएं हैं। उदाहरण के लिए, सीमित कंप्यूटिंग संसाधन।

सहयोगात्मक खेल शुरू करने के लिए, इन चरणों का पालन करें:

  1. लॉन्चर से, परियोजना के विकल्प बटन पर क्लिक करें और खेलें विकल्प चुनें।
  2. प्लेयर से, मेनू पर जाएं और नया विकल्प चुनें।
  3. निर्माण संवाद से, प्रतिभागियों की संख्या बढ़ाएं और फिर बनाएं बटन पर क्लिक करें।

सहयोगात्मक खेल में शामिल होने के लिए:

  1. लॉन्चर से, परियोजना के विकल्प बटन पर क्लिक करें और खेलें विकल्प चुनें।
  2. प्लेयर से, मेनू पर जाएं और जुड़ें विकल्प चुनें।
  3. जुड़ें संवाद से, सहयोगात्मक खेल शुरू करने वाले उपयोक्ता का [IP पता] (https://flathub.org/apps/org.gabmus.whatip) निर्दिष्ट करें और जुड़ें बटन पर क्लिक करें।

📝 ध्यान दें: सहयोगात्मक खेल में शामिल होने वाले सभी उपयोक्ताओं के पास समान थीम समूह या परियोजना की एक प्रति होनी चाहिए।

📝 ध्यान दें: थीम समूह से बनाए गए तदनुकूल दृश्यों को साझा करने की आवश्यकता नहीं है। खेल खेलने के दौरान दृश्य स्वचालित रूप से साझा किया जाता है, जब तक कि सभी उपयोक्ता समान थीम समूह साझा करते हैं।

📝 ध्यान दें: उपयोक्ता थीम समूह में परिभाषित किसी भी तत्व के रूप में सत्र में शामिल हो सकते हैं, उदाहरण के लिए, एक पेड़ या चट्टान के रूप में। ऐसा करने के लिए, निर्माण या जुड़ाव संवाद के उन्नत अनुभाग का विस्तार करें और एक अलग तत्व प्रकार का चयन करें।

दृश्य संपादक

दृश्य संपादक उपयोक्ताओं को खेल की दुनिया बनाने और संशोधित करने देता है। यह Gameeky में बिना किसी कोड के निर्माण अनुभव के प्रारंभिक और सरलतम रूप के रूप में कार्य करता है।

किसी मौजूदा दृश्य को संपादित करने के लिए, लॉन्चर से परियोजना के संपादित करें बटन पर क्लिक करें। एक नया दृश्य बनाने के लिए किसी मौजूदा परियोजना जैसे थीम समूह को शुरू करने की अनुशंसा की जाती है। नया दृश्य जोड़ने के लिए इन चरणों का पालन करें:

  1. लॉन्चर से, परियोजना के विकल्प बटन पर क्लिक करें और संपादित करें विकल्प चुनें।
  2. दृश्य संपादक से, मेनू पर जाएं और नया विकल्प चुनें।

📝 ध्यान दें: थीम समूहों को संशोधित नहीं किया जा सकता। इसलिए, एक संपादन योग्य प्रतिलिपि बनाई जानी चाहिए। थीम समूह विकल्प मेनू से, कॉपी करें विकल्प चुनें।

अवधारणाएं

एक दृश्य टाइ ग्रिड में व्यवस्थित तत्वों का एक संग्रह है। किसी दृश्य के मूल गुण हैं:

कार्यप्रवाह

दृश्य संपादन कार्यप्रवाह एक चित्रकारी टूल जैसा दिखता है। संस्थाओं को चित्रित किया जाता है और दृश्य से हटा दिया जाता है। किसी दृश्य को संपादित करने के मूल चरण निम्नलिखित हैं:

  1. दृश्य में इकाइयां जोड़ने के लिए, बाएं पैनल से एक तत्व का चयन करें और ग्रिड में एक टाइल पर क्लिक करके इसे दृश्य पर रखें।
  2. दृश्य से तत्वों को हटाने के लिए, बाईं ओर से हटाएं टूल का चयन करें और फिर ग्रिड में तत्व टाइल पर क्लिक करें।
  3. हालांकि इकाइयां पूर्वनिर्धारित गुणों और व्यवहारों के साथ आती हैं, दृश्य में विशेष तत्वों को अनुकूलित किया जा सकता है। बाएं पैनल से संपादित करें टूल चुनें और फिर ग्रिड में तत्व टाइल पर क्लिक करें।
  4. दृश्य का परीक्षण करने के लिए, मेनू पर जाएं और इसे आज़माएं विकल्प चुनें।

इसके अतिरिक्त, दृश्य संपादक चीजों को आसान बनाने के लिए सहायक प्रदान करता है जैसे:

युक्तियां और तरकीबें

बेहतर अनुभव के लिए, निम्नलिखित युक्तियां और तरकीबें आज़माएं:

तत्व संपादक

तत्व संपादक उपयोक्ताओं को खेल वस्तुओं और जीव बनाने और संशोधित करने देता है। यह एक गहरा बिना किसी कोड के निर्माण अनुभव प्रदान करता है, क्योंकि इसमें Gameeky की अंतर्निहित प्रणालियों को समझने की आवश्यकता होती है।

शुरुआत से एक नई तत्व बनाने से पहले, थीम समूह से मौजूदा तत्वों का निरीक्षण करने की अनुशंसा की जाती है। इसलिए, किसी मौजूदा तत्व का निरीक्षण करने के लिए इन चरणों का पालन करें:

  1. दृश्य संपादक से, बाएं पैनल में किसी तत्व पर दायां-क्लिक करें।
  2. मेनू से संपादित करें विकल्प चुनें।

एक नई तत्व बनाने के लिए:

  1. दृश्य संपादक से, बाएं पैनल में कहीं भी दायां-क्लिक करें।
  2. मेनू से जोड़ें विकल्प चुनें।

अवधारणाएं

संस्थाएं हर उस चीज़ का प्रतिनिधित्व करती हैं जो खेल में मौजूद हो सकती है, उदाहरण के लिए, घास, उपयोक्ता का चरित्र, एक प्रकाश स्रोत, पृष्ठभूमि संगीत और यहाँ तक कि खेल तर्क भी। एक तत्व तीन भागों से बनी होती है:

  1. खेल तर्क गुण।
  2. चित्रोपमा।
  3. ध्वनियां।

खेल तर्क गुण

ये गुण निर्धारित करते हैं कि संस्थाएं अन्य संस्थाओं के साथ कैसे व्यवहार करती हैं और बातचीत करती हैं, उदाहरण के लिए, इन गुणों के विभिन्न संयोजन यह निर्धारित करेंगे कि कोई तत्व एक स्थिर पत्थर या जीवित दुश्मन के रूप में कार्य कर रही है या नहीं।

हालांकि यहां दो दर्जन संपत्तियां हैं, इनमें से कुछ पर यहां विशेष ध्यान देने की आवश्यकता है:

📝 ध्यान दें: एक नया थीम समूह बनाते समय मान लें कि पहचानकर्ता संख्या 1 वाली तत्व खेल में उपयोक्ता के चरित्र को सौंपी जाएगी।

चित्रोपमा

तत्वों को 2D चित्रोपमा के माध्यम से स्क्रीन पर दर्शाया जाता है, जो स्थिर या एनिमेटेड हो सकता है।

इन चित्रोपमा को स्थिति और दिशा के विशिष्ट संयोजनों को सौंपा गया है, उदाहरण के लिए, एक विशिष्ट एनीमेशन तब प्रस्तुत किया जाएगा जब एक तत्व पश्चिम की ओर चल रही है, जबकि एक अन्य एनीमेशन तब प्रस्तुत किया जाएगा जब वही तत्व निष्क्रिय की ओर * दक्षिण*।

सभी तत्वों को एक तयशुदा चित्रोपमा प्रदान करना होगा, उदाहरण के लिए, इसे दृश्य संपादक या डीबग प्लगइन्स पर देखने के लिए।

ध्वनियां

चित्रोपमा के समान, इकाइयां विशिष्ट अवस्था में ध्वनियां उत्सर्जित कर सकती हैं, उदाहरण के लिए, जब तत्व चल रही हो तो पदचिन्हों की ध्वनि बजाई जाती है। यहां दिशाएं मायने नहीं रखतीं।

इसमें तयशुदा ध्वनियां नहीं हैं, क्योंकि ध्वनियां वैकल्पिक हैं।

कार्यप्रवाह

तत्व निर्माण कार्यप्रवाह किसी प्रपत्र या खाका को भरने के समान है। सबसे बुनियादी तत्व निम्नलिखित चरणों के साथ बनाई गई है:

  1. खेल टैब के अंतर्गत, ऊपर से नीचे तक मान निर्धारित करना प्रारंभ करें। ध्यान दें कि सभी संपत्तियां अपने स्वयं के तयशुदा प्रदान करती हैं। केवल पहचानकर्ता अनिवार्य है। एक नाम निर्धारित करने की अनुशंसा की जाती है ताकि दृश्य संपादक पर तत्व को ढूंढना आसान हो।
  2. चित्रोपमा टैब के अंतर्गत, पहला और तयशुदा एनीमेशन बनाने के लिए जोड़ें बटन पर क्लिक करें। अवस्था और दिशा दोनों को तयशुदा पर छोड़ दें। किसी छवि का चयन करने के लिए तयशुदा एनीमेशन के विवरण अनुभाग का विस्तार करें। चयनित छवि का निरीक्षण करने के लिए देखें बटन पर क्लिक करें।
  3. तत्व को सहेजें और दृश्य संपादक से इसका उपयोग करें।

युक्तियां और तरकीबें

बेहतर अनुभव के लिए, निम्नलिखित युक्तियां और तरकीबें आज़माएं:

कोड संपादक और LOGO जैसा कोड

सहयोगात्मक खेल खेलने के लिए समर्थन मिलने से सहयोगियों के लिए द्वार खुल जाते हैं जिन्हें कोड से नियंत्रित किया जा सकता है। इसे प्राप्त करने के लिए, Gameeky एक छोटी लाइब्रेरी प्रदान करता है जो उपयोक्ताओं को लोगो-जैसे अनुभव में पायथन का उपयोग करके एकल तत्व को नियंत्रित करने में सक्षम बनाता है।

कार्यप्रवाह

सहयोगात्मक खेल शुरू करने के लिए इन चरणों का पालन करें:

  1. लॉन्चर से, परियोजना के विकल्प बटन पर क्लिक करें और खेलें विकल्प चुनें।
  2. प्लेयर से, मेनू पर जाएं और नया विकल्प चुनें।
  3. निर्माण संवाद से, प्रतिभागियों की संख्या बढ़ाएं और फिर बनाएं बटन पर क्लिक करें।

कोड के साथ खेल में शामिल होने के लिए, इन चरणों का पालन करना होगा:

  1. लॉन्चर से, परियोजना के विकल्प बटन पर क्लिक करें और खेलें विकल्प चुनें।
  2. प्लेयर से, मेनू पर जाएं और कोड के साथ जुड़ें विकल्प चुनें।
  3. Gameeky लाइब्रेरी का उपयोग करने वाला पायथन कोड लिखें, नीचे उदाहरण देखें।
  4. प्ले बटन पर क्लिक करें।

उदाहरण

खेल से जुड़ें और छोड़ें:

from gameeky.library import Game

game = Game()
game.join()
game.quit()

कार्रवाइयां निष्पादित करें:

from gameeky.library import Game, Direction

game = Game()
game.join()
game.update()

game.idle(time=1000)
game.move(Direction.EAST, time=1000)
game.move(Direction.WEST, time=1000)
game.take(time=1000)
game.use(time=1000)
game.drop(time=1000)
game.interact(time=1000)

game.quit()

उपयोक्ता की चरित्र तत्व की स्थिति और बुनियादी गुणों का निरीक्षण करें:

from gameeky.library import Game

game = Game()
game.join()
game.update()

print(game.entity.position.x, game.entity.position.y)

game.quit()

दृश्य की स्थिति का निरीक्षण करें:

from gameeky.library import Game

game = Game()
game.join()
game.update()

for entity in game.scene.entities:
    print(entity.position.x, entity.position.y)

game.quit()

📝 ध्यान दें: सहयोगकर्ता केवल अपने आसपास का दृश्य ही देख सकते हैं, पूरा दृश्य नहीं।

उपयोक्ता के चरित्र तत्व के अग्रिम आंकड़ों का निरीक्षण करें:

from gameeky.library import Game

game = Game()
game.join()
game.update()

print(game.stats.durability, game.stats.stamina, game.stats.held)

game.quit()

युक्तियां और तरकीबें

बेहतर अनुभव के लिए, निम्नलिखित युक्तियां और तरकीबें आज़माएं:

प्लग-इन

प्रवर्तक किसी तत्व के व्यवहार को संशोधित कर सकते हैं। एक एकल तत्व अधिक जटिल व्यवहारों को मॉडल करने के लिए एकाधिक प्रवर्तक का उपयोग कर सकती है। हालाँकि पूर्वनिर्धारित प्रवर्तक की एक विस्तृत श्रृंखला है, वास्तविक कोड की तुलना में अंतिम परिणाम सीमित है।

इसलिए, Gameeky उपयोक्ता-निर्मित प्रवर्तक को पूर्वनिर्धारित प्रवर्तक से आगे जाने के लिए समर्थन प्रदान करता है।

अवधारणाएं

प्रवर्तक तीन प्रकार के होते हैं:

  1. नियमित प्रवर्तक दृश्य के प्रत्येक टिक पर कार्य करते हैं, उदाहरण के लिए, प्रत्येक टिक पर तत्व को एक यादृच्छिक स्थान पर ले जाना।
  2. सक्रिय करने योग्य प्रवर्तक केवल निश्चित समय अंतराल में या किसी अन्य तत्व द्वारा स्पष्ट रूप से सक्रिय होने पर कार्य करते हैं, उदाहरण के लिए, हर पांच सेकंड में दृश्य में एक नया दुश्मन पैदा करना।
  3. इंटरैक्टेबल प्रवर्तक तब अधिनियमित होते हैं जब अन्य संस्थाएं उसकी तत्व के साथ इंटरैक्ट करती हैं, उदाहरण के लिए, किसी तत्व को एक अलग स्थान पर टेलीपोर्ट करने के लिए जब वह तत्व किसी पोर्टल के साथ इंटरैक्ट करती है।

सभी प्रवर्तक अपने व्यवहार को संशोधित करने के लिए अपने स्वयं के तत्व खेल गुणों का उपयोग करते हैं:

कार्यप्रवाह

नया प्रवर्तक बनाने के लिए, निम्न चरणों का पालन करें:

  1. पाठ संपादक में एक नया दस्तावेज़ खोलें।
  2. एक प्रवर्तक क्लास लिखें, नीचे उदाहरण देखें।
  3. नया दस्तावेज़ ~/Gameeky/PROJECT_NAME/actuator/ACTUATOR_NAME.py में सहेजें
  4. तत्व संपादक से, खेल टैब के अंतर्गत प्रवर्तक अनुभाग पर जाएं।
  5. ACTUATOR_NAME नामक एक नया विकल्प पूर्वनिर्धारित प्रवर्तक के साथ प्रदर्शित किया जाएगा।
  6. इसे चुनें और तत्व को डिस्क पर सहेजें।

📝 ध्यान दें: विशिष्ट संस्थाओं को अनुकूलित करते समय उपयोक्ता-निर्मित प्रवर्तक को दृश्य संपादक से भी पहुंचा जा सकता है।

उदाहरण

एक न्यूनतम प्रवर्तक क्लास:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    def tick(self) -> None:
        pass

तत्व का निरीक्षण करें:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    def tick(self) -> None:
        print(self.entity.name)

तत्व पर कोई कार्रवाई करें:

from gameeky.plugins import Actuator as Plugin
from gameeky.common.definitions import Action, Direction

class Actuator(Plugin):
    def tick(self) -> None:
        self.entity.perform(Action.MOVE, Direction.SOUTH)

तत्व को एक संवाद भेजें:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    def tick(self) -> None:
        self.entity.tell("Hello...")

तत्व के ठीक सामने बैठी अन्य सभी इकाइओं का निरीक्षण करें:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    def tick(self) -> None:
        for entity in self.entity.obstacles:
            print(entity.name)

अन्य सभी इकाइओं का निरीक्षण करें जो तत्व के समान स्थिति साझा करते हैं:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    def tick(self) -> None:
        for entity in self.entity.surfaces:
            print(entity.name)

तत्व को घेरने वाली अन्य सभी तत्वों का निरीक्षण करें:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    def tick(self) -> None:
        for entity in self.entity.surroundings:
            print(entity.name)

📝 ध्यान दें: परिवेश विधि तत्व की त्रिज्या संपत्ति को ध्यान में रखती है।

दृश्य में सभी तत्वों का निरीक्षण करें, जो स्थिर नहीं हैं:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    def tick(self) -> None:
        for entity in self.entity.scene.mutables:
            print(entity.name)

उपयोक्ताओं द्वारा नियंत्रित सभी तत्वों का निरीक्षण करें:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    def tick(self) -> None:
        for entity in self.entity.scene.playables:
            print(entity.name)

एक प्रवर्तक बनाएं जो हर पांच सेकंड में सक्रिय हो:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    activatable = True

    def tick(self) -> None:
        if not self.ready:
            return

        print("Activated...")

        super().tick()

📝 ध्यान दें: तैयार संपत्ति तत्व की दर संपत्ति को ध्यान में रखती है।

एक प्रवर्तक बनाएं जो केवल उपयोक्ताओं द्वारा सहभागिता किए जाने पर ही कार्य करता है:

from gameeky.plugins import Actuator as Plugin

class Actuator(Plugin):
    interactable = True

    def prepare(self, interactee: "Entity") -> bool:
        if interactee.playable is False:
            return False

        return super().prepare(interactee)

    def tick(self) -> None:
        if self.interactee is None:
            return

        print(f"Interacted with {self._interactee.name}")

        super().tick()

अधिक जटिल उदाहरणों के लिए Gameeky की पूर्वनिर्धारित प्रवर्तक निर्देशिका की जांच करें।

युक्तियां और तरकीबें

बेहतर अनुभव के लिए, निम्नलिखित युक्तियां और तरकीबें आज़माएं: