The open source repository for the action RPG game in development by Sig Productions titled 'Adventures in Lestoria'! https://forums.lestoria.net
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AdventuresInLestoria/Crawler/utils.cpp

49 lines
950 B

#include "utils.h"
float util::random(float range){
return float(rand())/RAND_MAX*range;
}
vf2d util::pointTo(vf2d posFrom,vf2d posTo){
return geom2d::line(posFrom,posTo).vector().norm();
}
float util::angleTo(vf2d posFrom,vf2d posTo){
return geom2d::line<float>(posFrom,posTo).vector().polar().y;
}
float util::degToRad(float deg){
return deg*(PI/180);
}
float util::radToDeg(float rad){
return rad*57.2957795130823208767;
}
float util::lerp(float n1,float n2,double t){
return n1*(1-t)+n2*t;
}
std::string util::timerStr(float time){
int seconds=int(time);
int hours=seconds/3600;
int minutes=seconds/60;
std::string timeStr="";
if(hours>0){
if(hours<10)timeStr+="0";
timeStr+=std::to_string(hours)+":";
}
if(minutes>0){
if(minutes%60<10)timeStr+="0";
timeStr+=std::to_string(minutes%60)+":";
}
if(seconds>0){
if(seconds%60<10&&minutes>0)timeStr+="0";
timeStr+=std::to_string(seconds%60);
}
return timeStr;
}