تور لحظه آخری
امروز : جمعه ، 9 آذر 1403    احادیث و روایات:  امام صادق (ع):هرگز دل به باطل بودن حق و به حق بودن باطل يقين نمى كند.
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

لوله بازکنی تهران

آراد برندینگ

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

بهترین وکیل کرج

بهترین وکیل تهران

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

خرید سرور مجازی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

خرید نهال سیب

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

رفع تاری و تشخیص پلاک

پرگابالین

 






آمار وبسایت

 تعداد کل بازدیدها : 1835678749




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

الگوریتم بازی مار و پله با c -


واضح آرشیو وب فارسی:سایت ریسک: الگوریتم بازی مار و پله با c zahra_k 13 ارديبهشت 1385, 22:59سلام دوستان و میخوام بازی مار و پله رو با C بنویسم ولی تا حالا با گرافیک C کار نکردم . کسی میتونه کمکم کنه؟ zahra_k 14 ارديبهشت 1385, 20:27با یه الگوریتم هم کارم راه میفتاد ، راضی به زحمت نبودم saalek110 14 ارديبهشت 1385, 21:05من الگوريتمي ندارم. ولي نوشتنش ساده است. من حاضرم كمك كنم. هم در گرافيكش. هم در كدنويسي اش. . من يك بازي مشابه ساخته ام قبلا. با سي++. در مورد اين بازي، يك ارايه دو بعدي تعريف كنيد.(شايد هم يك بعدي ساده تر باشه و موقع نمايش جور ديگر نمايش داد) بعد محتوي خانه ها مي تواند اعداد مختلفي داشته باشد كه نشانه وجود مهره ، يا سر و ته نردبان و مار است. براي تاس هم از تابع راندوم ميشه استفاده كرد. و صدا هم ميشه اضافه كرد. بعد اينكه مهره اي حركت كرد، يكسري تابع test بكار مي افته تا ببينه مهره ما وارد چه خانه اي شده. و حركت لازم را ايجاد مي كنه. من از سايتي نگاه نكرده ام ولي به احتمال قوي با سرچ مختصري ميشه سورس هاي مفيدي پيدا كرد. يك نمونه مارپيچي كه مهره بايد راه خروج را پيدا كند را سورسش را دارم. و يك سورس ساده شطرنج. . zahra_k 15 ارديبهشت 1385, 11:31ممنون که منو راهنمایی کردید من شروع می کنم ولی اگه میشه یه لطفی کنید و بگید از کجا می شه سورس هایی که میتونه کمکم کنه پیدا کرد saalek110 15 ارديبهشت 1385, 12:54با سلام. سورس ها را من با كلمات c+source+game پيدا مي كنم. ولي آنقدر راه انداختن سورس ها كار داره كه آدم خودش 10 بار بنويسه راحت تره. پس من نظر خودم اينه كه از طرز كدنويسي سورس ها ((فقط)) الهام بگيريم و برنامه را خودمان بنويسيم چون كار خيلي ساده تره. خيلي از اين الهام ها را من از بازيهايي كه با وي بي نوشته شده بود گرفتم. اگر نياز بود در عرض چند دقيقه من مي توانم سرچ كنم و لينك بدهم. ولي من كل اين برنامه را خودم قبلا مشابه اش را نوشته ام. در يك بازي هر خانه يك مربع بود كه مجموعا شهري مي ساختند. همان simcity 4 بازي معروف را من شبيه سازي كردم با سي در محيط گرافيكي و كار هم مي كرد. قالب برنامه را بسازيد ، بعد از سورس ها براي بهينه سازي و افزودن جلو هاي زيبا با همان روش الهام گرفتن كار خواهيم كرد. . zahra_k 15 ارديبهشت 1385, 23:18خوب منم برای آشنایی با کدها اون برنامه ها رو می خوام ، شما نمی تونی همون کار خودتونو به من بدید تا ببینم ؟ یا لااقل یه سری از کدهای گرافیکیشو ؟ Colonel 16 ارديبهشت 1385, 10:41با توربو سی تحت داس میخواین این برنامه رو بنویسین؟ دستورات گرافیکی رو میتونید در Help خود توربو سی پیدا کنید با مثال های کافی و مناسب. saalek110 16 ارديبهشت 1385, 20:16چشم. همه را تقديم مي كنم. البته از هاردم پاك كرده ام ولي به سرعت مي توانم اسكلت اصلي را باز ايجاد كنم. . saalek110 17 ارديبهشت 1385, 02:22بنام خدا. لازمه چند نكته را اول كار بگم. اولا انتخاب موضوع كار و روش كار با شماست و من هر چه الان مي گويم براي تبادل اطلاعات است. اولين موضوع اينكه من يك cd خريدم كه مارپله و منچ را هر دو را داشت. يعني يك cd بازي بود. و بازي كامل با تمامي جوانب و كامل. در مورد مار پله راستش با وجودي كه خيلي قشنگ برنامه ساخته شده بود ، هيچ جذابيتي نداشت. ميخواهم بگويم حالا كه مي خواهيد زحمت بكشيد ، يك چيزي بسازيد كه بتوانيد به عنوان يك بازي جذاب بهش افتخار كنيد ولي در مورد مارپله وقتي ما چند نفري بازي مي كرديم ، فقط كار بازي كنان اين شده بود كه ماوس را بگيرند و روي يك دكمه كليك كنند و بعد اتوماتيك تاس ريخته مي شد و اتوماتيك مهره آن فرد جلو مي رفت و حالا اگر به نردبان يا مار برخورد مي كرد ، باز تغيرات لازم اتوماتيك انجام مي شد. در كل بازيكن فقط يك دكمه را مي زد و بعد ماوس را مي داد به نفر بعد. و كلا هيچ جذابيتي نداشت. يعني در آخر كار بازي غيرمهيجي خواهيد داشت. خودتان اينها را دقيق تصور كنيد تا درك كنيد چه محيط بي روحي ايجاد مي شود. بعد كلي زحمت به چيز جالبي نمي رسيد. ولي در مورد منچ در اين cd وقتي 3 نفره يا 4 نفره بازي مي شد خيلي هيجانش بيشتر بود. چون هر فرد 4 مهره دارد و قدرت انتخاب دارد. مثلا مي تواند به كسي ارفاق كند يا از كسي انتقام زدن مهره اش را بگيرد. حالا چون در اين cd اين دو بازي كنار هم بود مقايسه كردم. ولي مثلا مي توانيد يك واليبال ساده بسازيد كه خيلي باز قشنگ تر ميشه. من داسي آن را زماني كه هنوز one نيامده بود و 386 و 486 فقط آمده بود را ديده بودم. داسي اش هم قشنگ بود. يا بازيهاي ديگر كه الان در ذهنم نيست. كارتي يا مهره اي. خودتان به بازيهاي مختلف فكر كنيد. دومين مسئله اينه كه استفاده از توابع گرافيكي در سي بسيار ساده است. سومين نكته اينه كه اينترفيس شما چيه؟ اگر داسي است و با توربو سي كار مي كنيد ، محيط بازي هم داسي ميشه ولي با سي بيلدر يا ويژوال سي ميشه اينترفيس(شماي) ويندوزي توليد كرد. متاسفانه من تابحال موفق به كار با اين دو نشده ام. ولي مي توانم با ويژوال بيسيك كار كنم . اگر مي خواهيد كدنويسي سي نمرين و كار كنيد، مي توانيد اينترفيس را با وي بي توليد كنيد و بين كدهاي سي و برنامه وي بي به راحتي با دستور shell ارتباط برقرار كنيد. يعني برنامه سي نتايج را در يك جايي مثل يك فايل ذخيره كنه و برنامه وي بي آن را مورد استفاده قرار دهد و وظيفه برنامه وي بي فقط نمايش باشه. البته راههاي ديگري براي ارتباط غير فايل هم حتما هست كه دوستان ديگر راهنمايي مي كنند. اگر وي بي كار نكرده ايد ، من حاضرم آن قسمت را ايجاد كنم. حتي مي توانيد وي بي را هم اگر نصب نكرده ايد ، نصب نكنيد. قسمت وي بي را من مي نويسم و فايل exe وي بي را به شما مي دهم و شما قسمت سي را بنويسيد و بعد دو فايل سي و وي بي را كنار هم قرار مي دهيد و با دكمه هاي وي بي و دستور shell فايلهاي سي را به خدمت مي گيريد. با ابزارهاي image و picturebox به راحتي ميشه عناصر بازي را با تنوع بالا كنار هم داشت و خيلي زيبا تر ميشه. اما در مورد برنامه سي. من در مورد بازي خودم ، فايل اول را اختصاص دادم به باز كردن محيط گرافيكي و تابع main و تمامي include هاي لازم. بقيه فايلها را با پسوند h ذخيره كردم. البته درستش اينه كه همه پسوندcpp داشته باشند و در يك پروژه قرار دهيم. ولي برنامه من هم هيچ مشكلي نداشت. در مورد سي بودن يا سي پلاس بودن هم فكر نمي كنم در مورد اين برنامه فرقي داشته باشه. برنامه من cpp بود پسوند فايل اولش و بقيه h بود. در فايل دوم كه h بود، من حلقه اي ساختم براي دريافت كليدها از كاربر(بازي كننده) ولي بعدا ديدم با ماوس است كه برنامه جذاب ميشه و كلا تمام برنامه را تغيير دادم و به جاي كليد ، از ماوس استفاده كردم. مثلا براي رسم يك خيابان در شهر ، با ماوس دو طرف را علامت مي زدم و خيابان رسم مي شد. البته اين خوب نبود. ميشه كاري كرد كه برنامه پايين نگه داشته شدن ماوس را هم بفهمه كه با استفاده از وقفه هاي ديگري انجام ميشه. اين قسمتها را هم من آماده مي كنم و مشكلي نيست. و فرقي هم نمي كنه در چه بازي ئي. هر بازي ئي كه شما خواستيد. پس فايل دوم شد حلقه. كه در ماوس و كيبورد فرق داره. روش كار من اين بود كه در فايل دوم يك تابع ساختم و در فايل اول اعلان وجود تابع را كردم. و اين قضيه مسلسل وار ادامه خواهد داشت. يعني در فايل سوم هم تابعي داريم كه در فايل دوم مي گيم كه چنين تابعي داريم. البته ميشه همه برنامه را در يك فايل داشت ولي مي دانيد كه كشيدن اسكرول بار و طولاني بودن اين تك فايل باعث ميشه كه بعد مدتي ديگه نشود كار كرد. من سعي كردم هر فايل جوري باشه كه كل كدها را همزمان روي صفحه مانيتور بتوانم ببينم يا حدااكثر درازي كدها دو برابر اندازه مانيتور باشه. من حدود 10 تا 15 فايل داشتم و مي دانستم هر فايل وظيفه اش چيست و اسم فايلها را هم با توجه به اين وظيفه گذاشته بودم. در ضمن در ويندوز تنظيم كرده بودم كه وقتي روي فايل اول(با پسوند cpp ) كليك مي كردم ، با توربو سي اتوماتيك باز بشه تا وقتم اين جوري تلف نشه. و همچنين من كار اديت كدها را در اديتور كدوايز انجام مي دادم چون از اديتور توربو سي خيلي راحت تر است. در تاپيكي در تالار سي موجود است ، اگر خواستيد دانلود كنيد. مثلا كپي پيست خيلي راحت تر است تا انجام اين كار در اديتور توربوسي. البته اگر شما هم از توربوسي استفاده مي كنيد. من تمامي تمرينات خود را در توربوسي انجام داده ام و با كامپايلرهاي ديگر خيلي خيلي كم آشنايي دارم. خوب. كليات را گفتم. كدنويسي اش هم چه گرافيكي ، چه رياضي و ساختاري كاري نداره. و اكثرا تكرار كدهاي مشخصي است. آنچه فقط مهمه نظم بالاي كار است تا با error برخورد نكنيد. چون در برنامه هاي بزرگ پيدا كردن خطا به مراتب سخت تره. پس بايستي هميشه يك كپي از برنامه خود كنار داشته باشيد. چون ممكنه كه بعد ايجاد تغييرات ديگه نتوانيد رفع خطا كنيد و گاه مجبور مي شويد كه كل برنامه را از اول بنويسيد. پس هميشه يك بك آپ بگيريد. و وقتي ارتقا برنامه با موفقيت انجام شد كپي را نو كنيد يا كپي بعدي را بدون دست زدن به كپي قبلي باز ذخيره كنيد. نكته ديگر اين كه گاهي شما مي خواهيد يك ابزار جديد را به برنامه بيافزاييد. مثلا يك تابع گرافيكي جديد يا يك چيزي مثل struct يا class . بهتره كه اول در يك برنامه تست كه هميشه كنار داريد آن ابزار جديد را امتحان كنيد و وقتي بهش مسلط شديد ، بياوريد داخل برنامه اصلي. ولي باز هم با داشتن كپي از برنامه در جايي امن. بهتره اول در محيط غيرگرافيكي(اگر ابزار جديد غيرگرافيكي است) امتحان كنيد و بعد در محيط گرافيكي تست و بعد در برنامه اصلي. البته با شرايط مختلف فرق دارد كه خودتان تصميم مي گيريد. يك قابليت هست كه شما مي توانيد به محيط غير گرافيكي برويد و كارهايي را بكنيد و بعد بازگرديد به محيط گرافيكي. كه من اين كار را لازم ندانستم و تمام كارها را در محيط گرافيكي انجام دادم. مثل نمايش كلمات و اعداد. قابليت ديگر اينه كه شما مي توانيد صفحات متعدد داشته باشيد. يعني در محيط گرافيكي شما مثلا 8 صفحه واقعا داريد كه فقط يكي را بر روي مونيتور مي بينيد. شما مي توانيد بر روي هر يك از اين 8 صفحه چيزهايي را به نمايش بگذاريد و هر صفحه را كه خواستيد را روي صفحه مونيتور به نمايش بگذاريد. اين كار باعث سرعت بسيار بالايي مي شود. چون براي پاك كردن صفحه و رسم صفحه جديد در حالت معمولي وقت بيشتري صرف مي شود. مثلا در صفحه 2 امتيازات بازي باشه كه با فشار يك دكمه بلافاصله بيايد و برود و خيلي با سرعت بالايي انجام شود. صدا هم ميشه اضافه كرد. كه در مراحل بعدي مطرحه. براي شروع ، شما براي فايل اول كه مشكلي نخواهيد داشت. فقط ايجاد حلقه در فايل دوم مي ماند. و فايلهاي بعدي هم يكسري مقايسه و محاسبات است. سعي كنيد حلقه را بسازيد. دستورش الان يادم نيست ولي پيدا مي كنم. كلا چند نوع حلقه ميشه ساخت. يك نوع اينه كه شما با while چرخش ايجاد مي كنيد و وسط حلقه يك getch مي گذاريد. عيبش اينه كه آنجا حلقه گير مي كنه تا شما دكمه اي را بزنيد. نوع ديگر حلقه هست كه همين طور مي چرخه تا كليدي را نزده ايد و وقتي كليدي را بزنيد ، از حلقه خارج ميشه. اين نوع براي بازي مناسب است. يعني وقتي از حلقه خارج شد ما در زير حلقه(يعني در ادامه كدها بعد كدهاي حلقه) تدابيري مي ريزيم براي تصميم گيري براي كليد زده شده كه با if انجام ميشه. كه مثلا مي گيم if (a==’x’ ) …. البته شايد همين يك خط را هم من غلط نوشتم كه بايد بروم نگاه كنم. ولي براي اين نوع حلقه يك تابعي هست كه مقدار صفر و يك برميگرداند موقعي كه كليد زده شده باشد يا زده نشده باشد. البته تمامي اين نوع حلقه ها براي نوع ((صفحه كليدي)) است. براي نوع ((ماوسي)) ما حلقه امان فرق دارد. براي اين نوع در وسط حلقه ماوس را مي خوانيم و بعد باز با if تصميم مي گيريم كه با كليك چپ يا راست كدام تابع احضار بشه.(كه هر تابع در يك فايل بود.) . البته روشهاي من همه ابتكار خودم بوده و مدعي نيستم درست باشه اين كارها و خوشحال مي شوم دوستان ديگر،راههاي بهتر را بگويند. . milani 02 خرداد 1385, 10:14من برنامه کامل آنرا برای فروش دارم اینن برنامه به زبان C++ است که هم می شه با کامپیوتر با اون بازی کرد و هم دو نفری تو اون بازی کرد. Lahum 20 ارديبهشت 1387, 12:55سلام دوستان کسی برنامه بازی منچ رو توی محیط C داره؟ من گرافیکش رو نوشتم ولی بازیشو نمی تونم بنویسم اگه کسی کد بازی رو داره ممنون میشم اگه بده استفاده کنم :) Lahum 20 ارديبهشت 1387, 20:30خواهش می کنم اگه کسی سورس این بازی رو داره بزاره اینجا خیلی بهش احتیاج دارم :sad: ممنون میشم azame mahmoodi 31 خرداد 1387, 12:19سلام خدمت دوستان عزیز من عضو جدید هستم من برنامه بازی ماروپله رو میخوام تورو خدا هرکی داره بهم بده تا 5روز دیگه میخوام به استاد تحویل بدم :sad: با تشکر حسین نوباغی 20 آذر 1387, 11:56ببخشید اگه ممکنه برنامه بازی مار و پله با لیست پیوندی بهم بدین خیلی لازمه.




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 3778]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن