Mercurial > hg > old > magoroku_racing
diff car.c @ 88:ce9ef7dcf2f0
convert UTF-8
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 21 Apr 2011 17:50:23 +0900 |
parents | a1908b83f8fa |
children | 8edae89a3877 |
line wrap: on
line diff
--- a/car.c Wed Apr 20 23:48:01 2011 +0000 +++ b/car.c Thu Apr 21 17:50:23 2011 +0900 @@ -14,7 +14,7 @@ #define DEFAULT_SET (EFFECT_TEXTURE_USE | EFFECT_ALPHABLEND_UNUSE | EFFECT_SHADING_FLAT) #define BUFSIZE 256 -/* $B=i4|0LCV$H=i4|J}8~(B */ +/* 初期位置と初期方向 */ static FVECTOR location = {0, 0, 0, 1}; static FVECTOR direction = {0, 0, 1, 1}; @@ -112,7 +112,7 @@ } } - /* $B$3$3$^$GC)$jCe$$$?$iFI$_9~$_<:GT(B */ + /* ここまで辿り着いたら読み込み失敗 */ fprintf(main_fp, "error - car_new_readCSV\n"); exit(EXIT_FAILURE); } @@ -135,8 +135,8 @@ } /*--------------------------- - car$B$r(BY$B<4$G2sE>$5$;$k(B - flg: $B2sE>J}8~(B 1:$B1&(B, -1:$B:8(B + carをY軸で回転させる + flg: 回転方向 1:右, -1:左 ---------------------------*/ void car_swerve(CarPtr car, int flg) @@ -155,8 +155,8 @@ } /*---------------------------- - car$B$r2CB.!&8:B.$9$k(B - (flg == 1) ? $B2CB.(B : $B8:B.(B + carを加速・減速する + (flg == 1) ? 加速 : 減速 ---------------------------*/ void car_accelerate(CarPtr car, int flg) @@ -168,13 +168,13 @@ /*--------------------------------- - $B?J9T8e$N(Bcar$B$KBP$7$F%3!<%9LL$NFb30H=Dj$r9T$$!"(B - : $B8=:_$N%3!<%9(B - : $B8=:_$N%3!<%9$N<!$N%3!<%9(B - : $B8=:_$N%3!<%9$NA0$N%3!<%9(B - $B$KB8:_$9$l$P(BTRUE$B$rJV$9(B - $B$I$N%3!<%9$K$b5o$J$$(B($BJI$K>WFM$7$?(B)$B>l9g$O(B - FALSE$B$rJV$9!#(B + 進行後のcarに対してコース面の内外判定を行い、 + : 現在のコース + : 現在のコースの次のコース + : 現在のコースの前のコース + に存在すればTRUEを返す + どのコースにも居ない(壁に衝突した)場合は + FALSEを返す。 ---------------------------------*/ static Bool car_field_check(CarPtr car) @@ -182,13 +182,13 @@ FieldPtr p; FieldPtr f = field_get_actual(); - // $B8=:_$N%3!<%9$G>WFM!&Fb30H=Dj(B + // 現在のコースで衝突・内外判定 p = f; if (col_detect(&p->colface, car->vertical, car->location) == TRUE) { goto FIELD_CHECK_OK; } - // $B8=:_$N%3!<%9$N<!$KNY@\$9$k%3!<%9$G>WFM!&Fb30H=Dj(B + // 現在のコースの次に隣接するコースで衝突・内外判定 p = f->next; if (col_detect(&p->colface, car->vertical, car->location) == TRUE) { if (field_rap_increment(1)) { @@ -197,14 +197,14 @@ goto FIELD_CHECK_OK; } - // $B8=:_$N%3!<%9$NA0$KNY@\$9$k%3!<%9$G>WFM!&Fb30H=Dj(B + // 現在のコースの前に隣接するコースで衝突・内外判定 p = f->prev; if (col_detect(&p->colface, car->vertical, car->location) == TRUE) { field_rap_increment(-1); goto FIELD_CHECK_OK; } - // $B$I$N%3!<%9>e$K$b5o$J$$(B($BJI$K>WFM(B) + // どのコース上にも居ない(壁に衝突) return FALSE; FIELD_CHECK_OK: @@ -214,9 +214,9 @@ /*------------------------------ - $BB.EY(Bspeed$B$H8~$-(Bdirection$B$+$i(B - $B?J9T8e$N0LCV(Blocation$B$r5a$a$k!#(B - $B$^$?!"?J9T8e$N>WFMH=Dj$b9T$&!#(B + 速度speedと向きdirectionから + 進行後の位置locationを求める。 + また、進行後の衝突判定も行う。 ------------------------------*/ static void car_move(CarPtr car) @@ -271,14 +271,14 @@ void car_update(CarPtr car) { - // $B0\F0(B + // 移動 car_move(car); - // $BK`;$$K$h$kB.EY8:>/(B + // 摩擦による速度減少 car->speed -= 0.005; car->speed = (car->speed < 0) ? 0 : car->speed; - // $B79$-(B + // 傾き car_axis_rotation(car); }