1414********************************************************************************************/
1515
1616#include "raylib.h"
17+ #define RAYMATH_IMPLEMENTATION
1718#include "raymath.h"
1819
1920void raylib_js_set_entry (void (* entry )(void ));
@@ -81,6 +82,16 @@ void UpdateCameraPlayerBoundsPush(Camera2D *camera, Player *player, EnvItem *env
8182 "Follow player center horizontally; update player center vertically after landing" ,
8283 "Player push camera on getting too close to screen edge"
8384 };
85+
86+ //custom MATH funcitons
87+ float myfminf (float a , float b ) {
88+ if (b < a ) return b ;
89+ return a ;
90+ }
91+ float myfmaxf (float a , float b ) {
92+ if (b > a ) return b ;
93+ return a ;
94+ }
8495
8596void GameFrame () {
8697
@@ -232,10 +243,10 @@ void UpdateCameraCenterInsideMap(Camera2D *camera, Player *player, EnvItem *envI
232243 for (int i = 0 ; i < envItemsLength ; i ++ )
233244 {
234245 EnvItem * ei = envItems + i ;
235- minX = fminf (ei -> rect .x , minX );
236- maxX = fmaxf (ei -> rect .x + ei -> rect .width , maxX );
237- minY = fminf (ei -> rect .y , minY );
238- maxY = fmaxf (ei -> rect .y + ei -> rect .height , maxY );
246+ minX = myfminf (ei -> rect .x , minX );
247+ maxX = myfmaxf (ei -> rect .x + ei -> rect .width , maxX );
248+ minY = myfminf (ei -> rect .y , minY );
249+ maxY = myfmaxf (ei -> rect .y + ei -> rect .height , maxY );
239250 }
240251
241252 Vector2 max = GetWorldToScreen2D ((Vector2 ){ maxX , maxY }, * camera );
@@ -259,7 +270,7 @@ void UpdateCameraCenterSmoothFollow(Camera2D *camera, Player *player, EnvItem *e
259270
260271 if (length > minEffectLength )
261272 {
262- float speed = fmaxf (fractionSpeed * length , minSpeed );
273+ float speed = myfmaxf (fractionSpeed * length , minSpeed );
263274 camera -> target = Vector2Add (camera -> target , Vector2Scale (diff , speed * delta /length ));
264275 }
265276}
0 commit comments