Page MenuHomePhabricator (Chris)

No OneTemporary

Authored By
Unknown
Size
2 KB
Referenced Files
None
Subscribers
None
diff --git a/util/funcs.cpp b/util/funcs.cpp
index be67bf99..58f4df92 100644
--- a/util/funcs.cpp
+++ b/util/funcs.cpp
@@ -1,74 +1,78 @@
#include "funcs.h"
#include <allegro.h>
#include <vector>
#include <string>
using namespace std;
-static string dataPath = "data/";
+static string dataPath = "data";
/*
inline int rnd( int q ){
if ( q <= 0 ) return 0;
return (int)( rand() % q );
}
*/
int Util::rnd( int q, int min, int range ){
return q - min + rnd( range );
}
int Util::rnd( int min, int max ){
return rnd( max - min ) + min;
}
void Util::rest( int x ){
::rest( x );
}
void Util::setDataPath( const string & str ){
dataPath = str;
}
string Util::getDataPath(){
- return dataPath;
+ return dataPath + "/";
+}
+
+bool Util::exists( const string & file ){
+ return ::exists( file.c_str() ) != 0;
}
vector< string > Util::getFiles( string dataPath, string find ){
struct al_ffblk info;
vector< string > files;
if ( al_findfirst( (dataPath + find).c_str(), &info, FA_ALL ) != 0 ){
return files;
}
files.push_back( dataPath + string( info.name ) );
while ( al_findnext( &info ) == 0 ){
files.push_back( dataPath + string( info.name ) );
}
al_findclose( &info );
return files;
}
void Util::blend_palette( int * pal, int mp, int sc, int ec ) {
ASSERT( pal );
ASSERT( mp != 0 );
int sc_r = getr( sc );
int sc_g = getg( sc );
int sc_b = getb( sc );
int ec_r = getr( ec );
int ec_g = getg( ec );
int ec_b = getb( ec );
for ( int q = 0; q < mp; q++ ) {
float j = (float)( q ) / (float)( mp );
int f_r = (int)( 0.5 + (float)( sc_r ) + (float)( ec_r-sc_r ) * j );
int f_g = (int)( 0.5 + (float)( sc_g ) + (float)( ec_g-sc_g ) * j );
int f_b = (int)( 0.5 + (float)( sc_b ) + (float)( ec_b-sc_b ) * j );
pal[q] = makecol( f_r, f_g, f_b );
}
}
diff --git a/util/funcs.h b/util/funcs.h
index 005f6fff..72e7c2b6 100644
--- a/util/funcs.h
+++ b/util/funcs.h
@@ -1,33 +1,35 @@
#ifndef _funcs_h
#define _funcs_h
#include <stdlib.h>
#include <vector>
#include <string>
namespace Util{
// int rnd( int q );
inline int rnd( int q ){
if ( q <= 0 ) return 0;
return (int)( rand() % q );
}
std::vector< std::string > getFiles( std::string dataPath, std::string find );
std::string getDataPath();
void setDataPath( const std::string & str );
+bool exists( const std::string & file );
+
/* return a random number + some range between min/max */
int rnd( int q, int min, int max );
/* return a number between min/max */
int rnd( int min, int max );
void blend_palette( int * pal, int mp, int sc, int ec );
void rest( int x );
}
#endif

File Metadata

Mime Type
text/x-diff
Expires
Thu, Jun 11, 2:11 PM (3 w, 4 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
69403
Default Alt Text
(2 KB)

Event Timeline