मैं c ++ और SFML-2.0 का उपयोग करके 2-आयामी, टर्न-आधारित रणनीति गेम बना रहा हूं। आंदोलन ग्रिड-आधारित के बजाय दूरी-आधारित है, जिसमें कई अलग-अलग त्रिकोण-आकार के टुकड़े होते हैं, जो किसी दिए गए मोड़ पर, प्रत्येक स्थान पर घूम सकते हैं या आगे बढ़ सकते हैं।
आंदोलन इस तरह से काम करेगा कि खिलाड़ी टुकड़े को स्थानांतरित करने के लिए एक स्थान का चयन करता है, जो टुकड़े को लेने के लिए एक संभावित मार्ग उत्पन्न करता है। एक बार जब खिलाड़ी अपने निर्णय की पुष्टि कर लेता है, तो टुकड़ा उस पथ के साथ वांछित स्थान पर चला जाएगा। पथ दो कारकों द्वारा सीमित हैं: दूरी, एक टुकड़ा कितनी दूर जाने में सक्षम है, किसी भी मोड़ को ध्यान में रखते हुए (इसलिए यदि कोई वक्र है, तो यह वक्र के साथ लंबाई होगी, और सीधे बिंदु से बिंदु तक नहीं); और स्टीयरिंग कोण, चलते समय (उदाहरण के लिए, -30 से 30 मिनट तक) किसी भी बिंदु पर (और हर तक) कैसे घुमा सकता है।
मेरा सवाल यह है कि मुझे उन संभावित स्थानों की सीमा का निर्धारण कैसे करना चाहिए, जिनके लिए खिलाड़ी टुकड़ा-चाल चल सकता है?
मुझे पूरी तरह से यकीन नहीं है कि यहाँ क्या समीकरण और / या एल्गोरिथ्म का उपयोग करना है। मेरी मूल योजना अत्यंत जटिल थी, उस बिंदु तक जहां इसे लागू करना असंभव था, अकेले में समझाएं, और मैं इस बिंदु पर हूं कि परियोजना पूरी तरह से ठप हो गई।
मैं उस इकाई को कैसे निर्धारित कर सकता हूं जो एक इकाई को स्थानांतरित कर सकती है, इसकी त्रिज्या को ध्यान में रखते हुए?
उदाहरण के लिए, नीचे की छवि में। लाल, नीली और हरी रेखाएँ सभी समान लंबाई की होंगी। बैंगनी सर्कल निरूपित करता है जो आंदोलन इकाई को स्थानांतरित कर सकता है। (आकार संभवतः गलत है और लाइनें वास्तव में समान लंबाई नहीं हैं, लेकिन आपको यह विचार मिलता है)