واضح آرشیو وب فارسی:سایت ریسک: View Full Version : کمک فوری در گرافیک C newsha 300016-07-2008, 01:00 PMتوروخدا یه کمکی بکنید هر کی که بلده. یه بازی هستش مثل تنیس می مونه. زمین بازی گرده و توپ هم مربع هستش. دو تا راکت داریم که یکیو کامپیوتر باید کنترل کنه. چه طوری می شه راکت کامیوتر رو نوشت؟؟ و چه جوری می فهمه توپ کجاست که به سمت تون حرکت کنه. اگه کسی تونست کمک کنه بگه تا کد رو براش بفرستم. فاطـمه17-07-2008, 12:40 PMتوروخدا یه کمکی بکنید هر کی که بلده. یه بازی هستش مثل تنیس می مونه. زمین بازی گرده و توپ هم مربع هستش. دو تا راکت داریم که یکیو کامپیوتر باید کنترل کنه. چه طوری می شه راکت کامیوتر رو نوشت؟؟ و چه جوری می فهمه توپ کجاست که به سمت تون حرکت کنه. اگه کسی تونست کمک کنه بگه تا کد رو براش بفرستم. مگه شما کدش رو داری؟؟؟ در مورد سوالتون من تا حالا رو این جور برنامه ها کار نکردم ولی فکر کنم نباید سخت باشه شما باید با توجه به اینکه به کجای توپ ضربه زده میشه حرکت توپ رو شبیه سازی کنی و باید دیواره ها رو هم در نظر بگیری خب موقعیت توپ رو که تو زبونای ویژوال با رایت و لفت می شه تشخیص داد و تو c هم می شه به وسیله متغیر ها پیاده سازی کرد و البته می تونی واسه توپ و راکت یه کلاس یا ساختار تعریف کنی تا کارت راحت تر شه Mehrdad-bx17-07-2008, 05:15 PMکد رو همین جا بزار تا بقیه هم ببینند. راستی، تو گرافیک نمیخوای بنویسی و تا جایی که من فهمیدم میخوای هوش مصنوعی(هوش راکت ) رو بنویسی. همون تعریف کلاس ها و... بهتره. اگه واقعا میخوای هوش راکته رو بنویسی Pm بده پیمان اسم تاپیک رو درست کنه برات. newsha 300018-07-2008, 03:06 PMبابا قربونت. این دیگه مشکله من نیست. مشکل این استاد نابغه ی گرافیکمونه که گفته این بازی رو بنویسیم حالا خودشم توش مونده ..... من کد این بازی رو تا جایی که نوشتم می زارم اینجا. تو رو خدا کمک کنید هفته ی دیگه باید تحویل بدم.... Mehrdad-bx18-07-2008, 03:12 PMمن دقیقا نمیفهمم منظورتو. گرافیکشو باید تحویل بدی یا کدی که راکت کامپیوتر ببرتت(برنده بشه). اگه گرافیک باشه راحت تر از اونیه که فکرشو بکنی(من گرافیک سی بلد نیستم! خوب بلد نیستم ولی منظورم این بود برنامه گرافیکی نوشتن آسونه، تا اینکه بخوای الگوریتم بازی بکنی و...) newsha 300018-07-2008, 03:15 PM#include <graphics.H> #include <math.H> #include <dos.H> #include <stdio.H> #include <stdlib.H> #include <conio.H> void init_mouse(void){ struct REGPACK reg; reg.r_ax =0; intr(0x33, ®); } void show_mouse(void){ struct REGPACK reg; reg.r_ax =1; intr(0x33, ®); } void hide_mouse(void){ struct REGPACK reg; reg.r_ax =2; intr(0x33, ®); } void get_mouse(int *x,int *y,int *k){ struct REGPACK reg; reg.r_ax =3; intr(0x33, ®); *x=reg.r_cx; *y=reg.r_dx; *k=reg.r_bx; } int mouse_move(){ struct REGPACK reg; reg.r_ax =0x0b; intr(0x33, ®); if(reg.r_cx==0 && reg.r_dx==0) return 0; else return 1; } void draw_rocket(int a,int color){ setcolor(color); for(int i=1;i<=7;i++){ arc(320,240,a-10,a+10,190-i); arc(321,240,a-10,a+10,190-i); } } void draw_ball(double x,double y,int color){ setfillstyle(1,color); // fillellipse(x,y,7,7); bar(x,y,x+10,y+10); } void clear_ball(double x,double y){ setcolor(0); setfillstyle(1,0); // fillellipse(x,y,7,7); bar(x,y,x+10,y+10); } int check_b(int x,int y){ if((getpixel(x-1,y-1)==4 || getpixel(x+11,y+11)==4 || getpixel(x,y+11)==4 || getpixel(x+11,y)==4)) return 1; else return 0; } void main(void){ randomize(); int x,y,k,i; double shib_rocket,shib_top,zavie_rocket,alpha; char ch; int gd=DETECT,gm; initgraph(&gd,&gm," cgi (file:// cgi)"); init_mouse(); zavie_rocket=0; double ball_x=320,ball_y=240,ball_r=10; circle(320,240,200); draw_ball(ball_x,ball_y,12); show_mouse(); double m=1,dx=-1,dy=-m; int t; getch(); do{ hide_mouse(); clear_ball(ball_x,ball_y); t=check_b(ball_x,ball_y); if(t!=0){ if(shib_rocket-shib_top<10 && shib_rocket-shib_top>5){ dx=-dx; dy=-dy; }else if(shib_rocket-shib_top<0){ dx=-dx+0.3; dy=-dy-0.5; }else{ dx=-dx-0.3; dy=-dy+0.5; } // getch(); } ball_x=ball_x+dx; ball_y=ball_y+dy; //check contact ball with rocket draw_ball(ball_x,ball_y,12); setcolor(15);circle(320,240,200); show_mouse(); //delay(10); while((inportb(0x3da)&8)); while(!(inportb(0x3da)&8)); if(mouse_move()){ get_mouse(&x,&y,&k); alpha=atan2((double)(240-y),(double)(x-320+0.00001)); shib_rocket=(double)(240-y)/(double)(x-320+0.00001); shib_top=(double)(240-ball_y)/(double)(ball_x-320+0.00001); gotoxy(1,1);printf("%12.8f",shib_rocket); gotoxy(1,2);printf("%12.8f",shib_top); gotoxy(1,3);printf("%12.8f",shib_rocket-shib_top); hide_mouse(); draw_rocket(zavie_rocket,0); zavie_rocket=180*alpha/3.1415; draw_rocket(zavie_rocket,4); show_mouse(); } }while(!kbhit()); getch(); closegraph(); } newsha 300018-07-2008, 03:16 PMفکر کنم کد ها یه ذره اینجا خر تو خر شد ، نمی دونم اینجا می شه فایل رو اپلود کرد یا نه؟؟؟ Mehrdad-bx18-07-2008, 03:23 PMنه، نمیشه، باید بری یه جا آپلود کنی بزاری لینوکشو اینجا.(نگفتی مشکلت گرافیکه یا هوش راکته) newsha 300018-07-2008, 03:32 PMببین یه جورایی هر دوش می شه. چون هم باید راکت کامپیوتر طراحی شه و هم کد نویسی شه تا بتونه حرکت کنه. الان تو این کدی که فرستادم فعلا فقط یه راکته با رنگ قرمز که خودمون با موس حرکتش می دیم. حالا باید یه راکت دیگه هم طراحی شه که کامپیوتر کنترل کنه. یعنی حریف ما تو این بازی کامپیوتره newsha 300018-07-2008, 03:33 PMهر کی تونست کمکی بکنه بگه تا فایل رو براش mail کنم. Mehrdad-bx18-07-2008, 03:48 PMOk ولی چرا میل؟ همین جا پست 1 رو ویرایش کن و فایلو بزار تا همه ببینن. شاید از دست کسی کمک دیگه ای براومد. من دیگه باید برم 11 دقیقه دیگه مسایقه مشهد شروع میشه. بای فاطـمه19-07-2008, 02:35 PMاین کد رو بذار تو تگ کد تا آدم بفهمه چی نوشتی خب.... Mehrdad-bx19-07-2008, 06:02 PMشما کپی کن و تو نت پد یا هر چی پیست کن درسته! newsha 300023-07-2008, 09:21 AMایراد از خود این سایت. تو نت پد کپی کردم گذاشتم اینجا. در هر صورت هر کی تونست کمک کنه بگه براش میل کنم. سخت که نیست که!!!!!!!!!!!!!!!!!!! سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 166]