X operations(XOPS)に非常に近いFPSゲームを制作・リメイクし、成果物をオープンソースとして公開することを目的としたプロジェクトです。
| Revision | 273 (tree) |
|---|---|
| Time | 2021-09-05 00:41:20 |
| Author | |
人とマップの当たり判定処理を改良、発砲時の腕の反動計算を改善。
| @@ -1476,7 +1476,7 @@ | ||
| 1476 | 1476 | |
| 1477 | 1477 | //足元の面の角度を取得 |
| 1478 | 1478 | if( CollD->CheckALLBlockIntersectDummyRay(pos_x, pos_y, pos_z, 0.0f, -1.0f, 0.0f, NULL, NULL, &Dist, 1.2f) == true ){ |
| 1479 | - CollD->CheckALLBlockIntersectRay(pos_x, pos_y, pos_z, 0.0f, -1.0f, 0.0f, &id, &face, &Dist, 1.2f); | |
| 1479 | + CollD->CheckALLBlockIntersectRay(pos_x, pos_y + HUMAN_MAPCOLLISION_CLIMBADDY, pos_z, 0.0f, -1.0f, 0.0f, &id, &face, &Dist, 1.2f + HUMAN_MAPCOLLISION_CLIMBADDY); | |
| 1480 | 1480 | |
| 1481 | 1481 | inblockdata->Getdata(&bdata, id); |
| 1482 | 1482 |
| @@ -3038,7 +3038,12 @@ | ||
| 3038 | 3038 | WeaponParameter ParamData; |
| 3039 | 3039 | if( Param->GetWeapon(weapon_paramid, &ParamData) != 0 ){ return; } |
| 3040 | 3040 | |
| 3041 | - reaction_y = DegreeToRadian(0.5f) * ParamData.reaction; | |
| 3041 | + if( ParamData.scopemode == 2 ){ | |
| 3042 | + reaction_y = DegreeToRadian(4.0f); | |
| 3043 | + } | |
| 3044 | + else{ | |
| 3045 | + reaction_y = DegreeToRadian(0.5f) * ParamData.reaction; | |
| 3046 | + } | |
| 3042 | 3047 | } |
| 3043 | 3048 | } |
| 3044 | 3049 |
| @@ -3081,11 +3086,11 @@ | ||
| 3081 | 3086 | |
| 3082 | 3087 | //発砲などによる反動 |
| 3083 | 3088 | if( reaction_y > 0.0f ){ |
| 3084 | - if( reaction_y > DegreeToRadian(2) ){ reaction_y -= DegreeToRadian(2); } | |
| 3089 | + if( reaction_y > DegreeToRadian(0.01f) ){ reaction_y *= 0.5f; } | |
| 3085 | 3090 | else{ reaction_y = 0.0f; } |
| 3086 | 3091 | } |
| 3087 | 3092 | if( reaction_y < 0.0f ){ |
| 3088 | - if( reaction_y < DegreeToRadian(2) ){ reaction_y += DegreeToRadian(2); } | |
| 3093 | + if( reaction_y < DegreeToRadian(-0.01f) ){ reaction_y *= 0.5f; } | |
| 3089 | 3094 | else{ reaction_y = 0.0f; } |
| 3090 | 3095 | } |
| 3091 | 3096 |