From cb452087bb55cb426a711f5fbec60bf8173859e2 Mon Sep 17 00:00:00 2001 From: Julien Cassignol Date: Sat, 15 Nov 2008 00:09:03 +0000 Subject: [PATCH] numptyphysics: Update to rev 109, add some patches --- conf/distro/include/sane-srcrevs.inc | 2 +- .../numptyphysics/numptyphysics/faster.patch | 22 ++ .../numptyphysics/numptyphysics/keyb.patch | 189 ++++++++++++++++++ packages/numptyphysics/numptyphysics/keyb.png | Bin 0 -> 2571 bytes packages/numptyphysics/numptyphysics/next.png | Bin 0 -> 7054 bytes .../numptyphysics/numptyphysics.desktop | 9 + .../numptyphysics/replay_off.patch | 166 +++++++++++++++ packages/numptyphysics/numptyphysics_svn.bb | 30 +-- 8 files changed, 402 insertions(+), 16 deletions(-) create mode 100644 packages/numptyphysics/numptyphysics/faster.patch create mode 100644 packages/numptyphysics/numptyphysics/keyb.patch create mode 100644 packages/numptyphysics/numptyphysics/keyb.png create mode 100644 packages/numptyphysics/numptyphysics/next.png create mode 100644 packages/numptyphysics/numptyphysics/numptyphysics.desktop create mode 100644 packages/numptyphysics/numptyphysics/replay_off.patch diff --git a/conf/distro/include/sane-srcrevs.inc b/conf/distro/include/sane-srcrevs.inc index 6b1d5d8fe6..41990a7ab1 100644 --- a/conf/distro/include/sane-srcrevs.inc +++ b/conf/distro/include/sane-srcrevs.inc @@ -110,7 +110,7 @@ SRCREV_pn-neod ?= "4617" SRCREV_pn-netsurf ?= "3859" SRCREV_pn-networkmanager ?= "3202" SRCREV_pn-networkmanager-applet ?= "200" -SRCREV_pn-numptyphysics = "45" +SRCREV_pn-numptyphysics = "109" SRCREV_pn-om-locations ?= "28d56a504a41261c363c085a38f81721cdd6683e" SRCREV_pn-om-settings ?= "65" SRCREV_pn-oh-puzzles ?= "22" diff --git a/packages/numptyphysics/numptyphysics/faster.patch b/packages/numptyphysics/numptyphysics/faster.patch new file mode 100644 index 0000000000..e52c11e526 --- /dev/null +++ b/packages/numptyphysics/numptyphysics/faster.patch @@ -0,0 +1,22 @@ +--- old_Config.h 2008-11-05 13:45:25.000000000 +0200 ++++ Config.h 2008-11-05 13:45:44.000000000 +0200 +@@ -36,14 +36,15 @@ + # define SELECT_TOLERANCE 8.0f //PIXELS_PER_METREf) + # define CLICK_TOLERANCE 16 //PIXELs + #else +-# define ITERATION_RATE 60 //fps +-# define RENDER_RATE 20 //fps +-# define SOLVER_ITERATIONS 10 ++# define ITERATION_RATE 30 //fps ++# define RENDER_RATE 10 //fps ++# define SOLVER_ITERATIONS 5 + # define JOINT_TOLERANCE 4.0f //PIXELs + # define SELECT_TOLERANCE 5.0f //PIXELS_PER_METREf) +-# define CLICK_TOLERANCE 4 //PIXELs ++# define CLICK_TOLERANCE 16 //PIXELs + #endif + ++ + #define ITERATION_TIMESTEPf (1.0f / (float)ITERATION_RATE) + #define RENDER_INTERVAL (1000/RENDER_RATE) + diff --git a/packages/numptyphysics/numptyphysics/keyb.patch b/packages/numptyphysics/numptyphysics/keyb.patch new file mode 100644 index 0000000000..aa82e67215 --- /dev/null +++ b/packages/numptyphysics/numptyphysics/keyb.patch @@ -0,0 +1,189 @@ +diff -ur oldÃ_Game.cppGame.cpp +--- old_Game.cpp 2008-11-01 08:56:50.000000000 +0200 ++++ Game.cpp 2008-11-01 10:48:33.000000000 +0200 +@@ -896,6 +896,7 @@ + Window m_window; + Overlay *m_pauseOverlay; + Overlay *m_editOverlay; ++ Overlay *m_keyboardOverlay; + // DemoOverlay m_demoOverlay; + Os *m_os; + public: +@@ -905,6 +906,7 @@ + m_window(width,height,"Numpty Physics","NPhysics"), + m_pauseOverlay( NULL ), + m_editOverlay( NULL ), ++ m_keyboardOverlay( NULL ), + m_os( Os::get() ) + //,m_demoOverlay( *this ) + { +@@ -1038,6 +1040,14 @@ + && m_overlays.indexOf( m_pauseOverlay ) >= 0; + } + ++ void togglePause() ++ { ++ if ( !m_pauseOverlay ) { ++ m_pauseOverlay = createIconOverlay( *this, "pause.png", 50, 50 ); ++ } ++ toggleOverlay( m_pauseOverlay ); ++ } ++ + void edit( bool doEdit ) + { + if ( m_edit != doEdit ) { +@@ -1080,10 +1090,7 @@ + case SDLK_SPACE: + case SDLK_KP_ENTER: + case SDLK_RETURN: +- if ( !m_pauseOverlay ) { +- m_pauseOverlay = createIconOverlay( *this, "pause.png", 50, 50 ); +- } +- toggleOverlay( m_pauseOverlay ); ++ togglePause(); + break; + case SDLK_s: + case SDLK_F4: +@@ -1094,6 +1191,10 @@ + edit( !m_edit ); + break; + case SDLK_d: ++ if ( !m_keyboardOverlay ) { ++ m_keyboardOverlay = createKeyboardOverlay(*this); ++ } ++ toggleOverlay( m_keyboardOverlay ); + //toggleOverlay( m_demoOverlay ); + break; + case SDLK_r: +@@ -1154,6 +1165,19 @@ + return false; + } + ++ void undoLastStroke() ++ { ++ if ( m_createStroke ) { ++ m_scene.deleteStroke( m_createStroke ); ++ m_createStroke = NULL; ++ } else { ++ m_scene.deleteStroke( m_scene.strokes().at(m_scene.strokes().size()-1) ); ++ } ++ m_refresh = true; ++ } ++ ++ ++ + bool handlePlayEvent( SDL_Event &ev ) + { + switch( ev.type ) { +@@ -1197,13 +1221,7 @@ + break; + case SDL_KEYDOWN: + if ( ev.key.keysym.sym == SDLK_ESCAPE ) { +- if ( m_createStroke ) { +- m_scene.deleteStroke( m_createStroke ); +- m_createStroke = NULL; +- } else { +- m_scene.deleteStroke( m_scene.strokes().at(m_scene.strokes().size()-1) ); +- } +- m_refresh = true; ++ undoLastStroke(); + } + break; + default: +@@ -1250,6 +1268,10 @@ + { + Overlay *completedOverlay = createNextLevelOverlay(*this); + ++ //toggle onScreenKeyboard ON ++ m_keyboardOverlay = createKeyboardOverlay(*this); ++ toggleOverlay( m_keyboardOverlay ); ++ + m_scene.draw( m_window, FULLSCREEN_RECT ); + m_window.update( FULLSCREEN_RECT ); + +diff -ur old_Game.h Game.h +--- old_Game.h 2008-11-01 08:56:50.000000000 +0200 ++++ Game.h 2008-11-01 09:27:22.000000000 +0200 +@@ -41,6 +41,9 @@ + virtual void gotoLevel( int l, bool replay=false ) {} + Levels& levels() { return m_levels; } + virtual bool renderScene( Canvas& c, int level ) =0; ++ virtual void togglePause() {} ++ virtual void undoLastStroke() {} ++ virtual void edit( bool editting ) {} + bool m_quit; + bool m_edit; + bool m_refresh; +diff -ur old_Overlay.cpp Overlay.cpp +--- old_Overlay.cpp 2008-11-01 08:56:50.000000000 +0200 ++++ Overlay.cpp 2008-11-01 09:45:57.000000000 +0200 +@@ -311,7 +311,51 @@ + } + }; + ++class KeyboardOverlay : public IconOverlay ++{ ++ int m_saving, m_sending; ++public: ++ KeyboardOverlay( GameControl& game ) ++ : IconOverlay(game,"keyb.png",0,0,true), ++ m_saving(0), ++ m_sending(0) ++ {} ++ ++ int index( int x, int y ) ++ { ++ //these values correspond with keyb.png (in pixels) ++ int sizeOfElement = 20; ++ ++ int colum = x/sizeOfElement; ++ int row = y/sizeOfElement; ++ return row*3+colum; ++ } ++ ++ virtual void draw( Canvas& screen ) ++ { ++ IconOverlay::draw( screen ); ++ } + ++ virtual bool onClick( int x, int y ) ++ { ++ int i = index(x,y); ++ //printf("i= %d\n",i); return 0; ++ switch (i) { ++ case -1: return false; ++ case 0: m_game.undoLastStroke(); break; ++ case 1: m_game.togglePause(); break; ++ case 2: m_game.m_quit=true; break; ++ case 3: break; ++ case 4: m_game.edit( !m_game.m_edit ); break; ++ case 5: break; ++ case 6: m_game.gotoLevel(m_game.m_level-1); break; ++ case 7: m_game.gotoLevel(m_game.m_level); break; ++ case 8: m_game.gotoLevel(m_game.m_level+1); break; ++ default: break; ++ } ++ return true; ++ } ++}; + + + Overlay* createIconOverlay( GameControl& game, const char* file, +@@ -330,3 +383,8 @@ + { + return new NextLevelOverlay( game ); + } ++ ++extern Overlay* createKeyboardOverlay( GameControl& game ) ++{ ++ return new KeyboardOverlay( game ); ++} +diff -ur old_Overlay.h Overlay.h +--- old_Overlay.h 2008-11-01 08:56:50.000000000 +0200 ++++ Overlay.h 2008-11-01 09:44:16.000000000 +0200 +@@ -45,4 +45,5 @@ + + extern Overlay* createNextLevelOverlay( GameControl& game ); + ++extern Overlay* createKeyboardOverlay( GameControl& game ); + #endif //OVERLAY_H diff --git a/packages/numptyphysics/numptyphysics/keyb.png b/packages/numptyphysics/numptyphysics/keyb.png new file mode 100644 index 0000000000000000000000000000000000000000..4d77e88fd9f0d1ddecdf4acce4b7035e0f708c48 GIT binary patch literal 2571 zcmW-j2{@G7AID#kY#~jIZMc7vElU_n$k>g2O)|E~`nTQ7)mYPveUuPG8KG?X3n9xi zw#jwTSZ2Z%5|brN*+NYGU-$Dq=RMDR-skx}=eK;%?_@gIS)At);{gERyd}!i37qv$ z2Nyf|ZY{OD3{GrOP8P<%s}YH>;0LF#wS_5ga{82!tMkDX?nuwZ5jtK^}6SPp>^HTbhgIfp6>ns%Bu|$#D;l$4ZkV}{T{Flpea{Ifx(J?Vehr0@J_?@6r zGHye0y*^i=yK&?bGYu#okw^rRugCAfWo6j``7EqNrTmZp?pK+|VKQMAdCk+yD_p%; zg5Sc#1m{|p`oPT0EHN>$!Hc}My1Kfyru)Yil)Zh9)R=cy!h#Ne(tTwPqna2v>q<@;|Cr}%2?8TuFkgqP8r1$?W$*(F{C-W zYK_S9O&q5Fx2?j(Ge8k_`S38VeaMRx!*uuZDji-rWc}PZIKT*2hAAf)$S0t8Vd1~}`*Y#NL?Y9>SwK=3%mh|i z&b~B7S!r0YzzQ&oi#wF+S246@)zYoE)Vlu%(%9&rLO26dJbyksG<3Y`zsO*ecY?tU z4Q>l*eR8`9VEY*xP#ksN(JetwIS(su|+L4*nw1w?YX(h$v2m#59W)eL*KY5<>uxFG>ZabGc#y3nitTC-TpG! zvDHHjZ$l;??!L>sI6gie931@V*xA|nR^j>ZPFP8CX=!O!{C>EfA7i5KW?(>od=@RF zb*vu@95g9ZFD~KaIPuOMxR#dIl~Z_q=V&~1&J9YszV0a7Il(-tW6vrCv|whL`0_M=cPnMpys`uop%VHplqz* zLJt{UZ!t}N1N>NN8`*p}B`>#AK*384{4OE#?q%?pG5yV(H_p{|gG<{*MNoWy#duH* z^P{GQ#?CTT9Ab8s-3XLyst4 zj)O*@A#W-cl$V!7%*GK9Zo8pSC@ZTW@VMYye%;Y=tJZ~vP!`JE-q}ff{ocRK!ouQq zkZdlBkJBVsHBy(zM=?~j6*NssN{Wh#va#Va5`?CWBgl8Zd)2#=UhRSf@Z^bDtGlGI zuq=dU9}Lvvh~YIlPbyZLtK8vWb^JLH-!>h}N2zg91Ps9>`1@ZTeoavIt_s#wR8)k+ zIbO*-ELUpZ%a@9^E<-Cj+*k+20&x`C ztx#D-g`bz##1WyOz^x*pd;NOi`ec1om25i2h#nmuPjada4Gm2xuc8Lf*MCS1#M)0| z^kKGiu?NevN^71}_Hfx+7k4yzo$BB-0iiUOl$6k`?U6~Wb~2ghKfONHpi1@CdAR=d zt0)v&CO@=N=BOmR^5u&Uw8}w#;s;EaP^#B@IC&5afh1-+nFgP(flg%S`{%G{Z#LHrTK^J2@R59tH#kf^DQYKmQDV z{?h=v!mrWMQF{WL6-k69n6xorM| z4op&#DYNIZ6rO4Y3iK+UwUyP!Mq=cUQ+Z zHzOqmKwl@(dp0&UDS2&94EDF19NK^_z3wG^^Wravh)8-`nz^YdLR-6mcNa`IoksgM z+tI8Zz$4glBIA6om^a%U08&#^(T=XOPojs{v%t=|FGTHp&y0!q{Ce8;ONI&oKe}?# dE%)Yx%{)&*m{opc4c^oMOEWvuSH?cr{{vPL(?|dS literal 0 HcmV?d00001 diff --git a/packages/numptyphysics/numptyphysics/next.png b/packages/numptyphysics/numptyphysics/next.png new file mode 100644 index 0000000000000000000000000000000000000000..21a94ce1dc3479cbde72d66f727cc8629f8b609f GIT binary patch literal 7054 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 R0RN1ER1`Gji=h@T{{vk+BOL$$ literal 0 HcmV?d00001 diff --git a/packages/numptyphysics/numptyphysics/numptyphysics.desktop b/packages/numptyphysics/numptyphysics/numptyphysics.desktop new file mode 100644 index 0000000000..b85265ab6f --- /dev/null +++ b/packages/numptyphysics/numptyphysics/numptyphysics.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=numptyphysics +Comment=Physics Game +Note=Simulate Objects +Exec=xrandr -o 3 && numptyphysics -geometry 640x480; xrandr -o 0 +Icon=star.png +Type=Application +Categories=Games + diff --git a/packages/numptyphysics/numptyphysics/replay_off.patch b/packages/numptyphysics/numptyphysics/replay_off.patch new file mode 100644 index 0000000000..e2f606ea64 --- /dev/null +++ b/packages/numptyphysics/numptyphysics/replay_off.patch @@ -0,0 +1,166 @@ +--- old_Game.cpp 2008-10-30 15:46:15.000000000 +0200 ++++ Game.cpp 2008-10-30 15:49:14.000000000 +0200 +@@ -1197,100 +1197,9 @@ + } + }; + +-class DemoRecorder +-{ +-public: +- +- void start() +- { +- m_running = true; +- m_log.empty(); +- m_log.capacity(512); +- m_lastTick = 0; +- m_lastTickTime = SDL_GetTicks(); +- } + +- void stop() +- { +- printf("stop recording: %d events\n",m_log.size()); +- m_running = false; +- } + +- void tick() +- { +- if ( m_running ) { +- m_lastTick++; +- m_lastTickTime = SDL_GetTicks(); +- } +- } + +- void record( SDL_Event& ev ) +- { +- if ( m_running ) { +- m_log.append( m_lastTick, SDL_GetTicks()-m_lastTickTime, ev ); +- } +- } +- +- DemoLog& getLog() { return m_log; } +- +-private: +- bool m_running; +- DemoLog m_log; +- int m_lastTick; +- int m_lastTickTime; +-}; +- +- +-class DemoPlayer +-{ +-public: +- +- void start( const DemoLog* log ) +- { +- m_playing = true; +- m_log = log; +- m_index = 0; +- m_lastTick = 0; +- m_lastTickTime = SDL_GetTicks(); +- printf("start playback: %d events\n",m_log->size()); +- } +- +- bool isRunning() { return m_playing; } +- +- void stop() +- { +- m_playing = false; +- m_log = NULL; +- } +- +- void tick() +- { +- if ( m_playing ) { +- m_lastTick++; +- m_lastTickTime = SDL_GetTicks(); +- } +- } +- +- bool fetchEvent( SDL_Event& ev ) +- { +- if ( m_playing +- && m_index < m_log->size() +- && m_log->at(m_index).t <= m_lastTick +- && m_log->at(m_index).o <= SDL_GetTicks()-m_lastTickTime ) { +- ev = m_log->at(m_index).e; +- m_index++; +- return true; +- } +- return false; +- } +- +-private: +- bool m_playing; +- const DemoLog* m_log; +- int m_index; +- int m_lastTick; +- int m_lastTickTime; +-}; + + + class Game : public GameParams +@@ -1303,8 +1212,6 @@ + IconOverlay m_pauseOverlay; + EditOverlay m_editOverlay; + // DemoOverlay m_demoOverlay; +- DemoRecorder m_recorder; +- DemoPlayer m_player; + Os *m_os; + public: + Game( int width, int height ) +@@ -1328,15 +1235,11 @@ + if ( m_edit ) { + m_scene.protect(0); + } +- m_recorder.stop(); +- m_player.stop(); + if ( replay ) { + // for ( int i=0; i=0 && !handled; i-- ) { + handled = m_overlays[i]->handleEvent(ev); + } +@@ -1703,8 +1603,6 @@ + if ( m_scene.isCompleted() != isComplete && !m_edit ) { + isComplete = m_scene.isCompleted(); + if ( isComplete ) { +- m_player.stop(); +- m_recorder.stop(); + showOverlay( completedOverlay ); + } else { + hideOverlay( completedOverlay ); diff --git a/packages/numptyphysics/numptyphysics_svn.bb b/packages/numptyphysics/numptyphysics_svn.bb index 6c833c2f01..1e5409f223 100644 --- a/packages/numptyphysics/numptyphysics_svn.bb +++ b/packages/numptyphysics/numptyphysics_svn.bb @@ -1,39 +1,39 @@ DESCRIPTION = "Numpty Physics is a drawing puzzle game in the spirit (and style?) \ of Crayon Physics using the same excellent Box2D engine." -DEPENDS = "virtual/libsdl libsdl-image" +DEPENDS = "virtual/libsdl libsdl-image libpng" LICENSE = "GPL" HOMEPAGE = "http://numptyphysics.garage.maemo.org/" SECTION = "x11/games" PV = "0.2+svnr${SRCREV}" +inherit autotools + SRC_URI = "\ svn://garage.maemo.org/svn/${PN};module=trunk;proto=https \ http://wwwpub.zih.tu-dresden.de/~mkluge/numptyphysics_setup.tgz \ - file://gcc43.diff;patch=1 \ + file://replay_off.patch;patch=1;pnum=0 \ + file://next.png \ + file://keyb.patch;patch=1;pnum=0 \ + file://keyb.png \ + file://faster.patch;patch=1;pnum=0 \ + file://numptyphysics.desktop \ " S = "${WORKDIR}/trunk" EXTRA_S = "${WORKDIR}/local/packages/numptyphysics" -# what an ugly buildsystem... handcrafted Makefiles... back to the stoneage -export CCOPTS = "${CFLAGS} -I Box2D/Include" -export LDOPTS = "${LDFLAGS} -lSDL -lSDL_image -lX11" - -do_configure() { - for i in Config.h Makefile Game.cpp; do - install -m 0644 ${EXTRA_S}/$i ${S} - done +do_configure_append() { + mv ../next.png data + mv ../keyb.png data } -do_install() { +do_install_append() { install -d ${D}${datadir}/numptyphysics - install -d ${D}${bindir} install -d ${D}${datadir}/pixmaps install -d ${D}${datadir}/applications - install -m 0755 ${S}/arm/Game ${D}${bindir}/numptyphysics install -m 0644 ${EXTRA_S}/star.png ${D}${datadir}/pixmaps - install -m 0644 ${EXTRA_S}/numptyphysics.desktop ${D}/${datadir}/applications - cp -a ${EXTRA_S}/data/* ${D}/${datadir}/numptyphysics/ + install -m 0644 ../numptyphysics.desktop ${D}/${datadir}/applications + cp -a ${EXTRA_S}/data/* data/keyb.png ${D}/${datadir}/numptyphysics/ } FILES_${PN} += "${datadir}" -- 2.39.5