Ok so het hierdie gekry op die internet oor hoe om die bal van die paddle af te laat bons…
Eerstens het moes ek my bal n reghoek gemaak om dit maklikker te laat werk. Wil nog die sirkel weer maak werk.
Ek het die volgende variables gebruik:
- balposisie_x,
- balposisie_y,
- balrigting_x,
- balrigting_y,
- balspoed,
- paddle_links_x,
- paddle_links_y,
- paddle_regs_x,
- paddle_regs_y,
- paddle_wydte,
- paddle_lengte
Dan n funksie (void vliegballetjie) 🙂 wat die bal laat vlieg:
om die bal te beweeg:
balposisie_x += balrigting_x * balspoed;
balposisie_y += balrigting_y * balspoed;
dan om te kyk of die linkerkantse paddle getref word:
if(balposisie_x < paddle_links_x + paddle_wydte && balposisie_x > paddle_links_x && balposisie_y < paddle_links_y + rakket_lengte && balposisie_y > paddle_links_y)
die if statement is om te kyk of die bal die posisie van die paddle tref
dan as hy hom tref, verander jy die rigting van die bal deur te kyk waar die bal die paddle tref:
float kykinpakpos = ((balposisie_y – paddle_links_y) / paddle_lengte) -0.5f;
balrigting_x = fabs(balrigting x);
balrigting_y = kykinpakpos;
die fabs forseer die bal wat links trek om positief te word/wees en die balrigting_y kry die rigting van die som waar hy die paddle tref, in die middel, bo of onder en bons dan in die teenoorgestelde rigting. in die middel is hy 0 en bons dan horisontaal na die anderkant, onder is dit -0.5 dan bons hy af en bo is dit 0.5 en bons dan op.
gebuirk – fabs vir die regterkant om x negatief te maak.
Dan roep jy die funksie vliegballetjie in jou opdatteer funksie.
Cool! Ek het iets soortgelyk ingedagte gehad, maar het nog nie daaraan begin werk nie. Hierdie sal my ‘n goeie beginpunt gee.