webForumDet fria alternativet

Pong spel

1 svar · 361 visningar · startad av gundeman

gundemanMedlem sedan jan. 200167 inlägg
#1

Jag håller på med ett pong spel.
shape1 är en boll och shape2 är en pong bräda som finns i båda ändar för att hindra bollen från att stöta i kortsidorna.
När jag skriver in följande kod kan inte bollen stöta i kanten eftersom den studsar när den har samma x koordinat som shape2 (även om de har helt olika y värden)
begin
if shape1.left > form1.width - shape1.Width then dx:=-dx;
if shape1.left < 0 then dx:=-dx;
shape1.left:=shape1.left + dx;
if shape1.top > form1.height - shape1.height then dy:=-dy;
if shape1.top < 0 then dy:=-dy;
shape1.top:=shape1.top + dy;
if shape1.Left>shape2.Left -65 then begin
dy:=-dy;
dx:=-dx;

end;
(inte hela koden)
det är den här delen av koden som gör det men tar jag bort det så studsar inte bollen mot brädan.
if shape1.Left>shape2.Left -65 then begin
dy:=-dy;
dx:=-dx;

Alpha IIMedlem sedan maj 20002 993 inlägg
#2

Blir väldigt krångligt om du ska hålla på med shapar använd DelphiX istället så kan du använda spritar.

------------------
Home sweet home

127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)