نمایش نتایج 1 تا 2 از 2

نام تاپیک: سوال در ساخت بازی پینگ پنگ در پاسکال

  1. #1

    سوال در ساخت بازی پینگ پنگ در پاسکال

    سلام به همه دوستان
    من میخوام بازی پینگ پگ تو پاسکال رو بسازم.تا جاهایی رو هم ساختم.
    این کدش:
    rogram pnigpong ;
    uses crt,graph;
    const directory ='c:\tp\bgi';
    cup = chr(72);
    cdown = chr(80);
    cesc = chr(27);
    var driver,x,y,xc,yc,limy,limx, mode : integer;
    chkey : char;
    begin
    x:=50;
    y:=100;
    xc:=300;
    yc:=150;
    limy:=1;
    limx:=1;
    initgraph ( driver , mode ,directory);
    setfillstyle (1,1);
    bar (100,50,500,250);{miz}
    setfillstyle (1,4);
    bar (501,x,520,y);{raket rast}
    BAR (80,x,99,y); {raket chap}
    {rasme toop}
    setcolor(15);
    circle (300,150,5);
    setfillstyle(1,15 );
    floodfill(300,150,15);
    {bakhshe harekat}
    repeat
    begin
    {harekat toop}
    if yc>=245 THEN
    limy:=limy*(-1);
    if yc<=55 then
    limy:=limy*(-1);
    if xc>=495 then
    limx:=limx*(-1);
    if xc<=105 then
    limx:=limx*(-1);
    xc:=xc+limx;
    yc:=yc+limy;
    setfillstyle (1,1);
    bar (100,50,500,250);{miz}
    setcolor(15);
    circle (xc,yc,5);
    setfillstyle(1,15 );
    floodfill(xc,yc,15);
    chkey :=readkey;
    {key}
    if chkey=cdown then
    begin
    SETFILLSTYLE (0,0);
    BAR (80,50,99,250) ;
    BAR (501,50,520,250) ;
    x:=x+2;
    y:=y+2;
    SETFILLSTYLE (1,4 );
    BAR (80,x,99,y);{raket chap}
    bar (501,x,520,y)
    end;
    if chkey=cup then
    begin
    SETFILLSTYLE (0,0);
    BAR (80,50,99,250) ;
    BAR (501,50,520,250) ;
    x:=x-2;
    y:=y-2;
    SETFILLSTYLE (1,4);
    BAR (80,x,99,y);{raket chap}
    bar (501,x,520,y)
    end;
    end;
    until chkey=cesc
    ;
    readln;
    closegraph
    end.


    سوال یا همون مشکل من مربوط به بخشی هست که پررنگ کردم.یعنی بخش حرکت ها.
    اول یک سوال :آیا تابعی برای حرکت یک شکل درپاسکال وجود داره یا نه؟
    چون من چنین تابعی پیدا نکردم مجبور شده که با استفاده از repeat حرکت رو ایجاد بکنم.
    این حرکت به خوبی کار مینه. قط یه مشکل کوچیک داره.هر وقت دکمه up یا down رو بزنی و فشار بدی توپ حرکت میکنه. یعنی با بالا کردن و پایین کردن راکت ها توپ حرکت میکنه.و وقتی هیچ دکمه ای رو نزنی توپ ثابت میمونه.
    نمیشه کاری کرد توپ به حرکتش ادامه بده؟؟؟

    خواهش میکنم فقط سریع پاسخ بدید. اگر هم قسمتی از برنامه براتون ابهام داشت بپرسید تا براتون توضیح بدم.
    ممنون

  2. #2
    خواهشا لطف کنید پاسخ بدید
    شدیدا احتیاج دارم
    ممنون

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •