[Scummvm-cvs-logs] CVS: scummvm/simon simon.cpp,1.289,1.290
Travis Howell
kirben at users.sourceforge.net
Sun Aug 10 08:59:02 CEST 2003
Update of /cvsroot/scummvm/scummvm/simon
In directory sc8-pr-cvs1:/tmp/cvs-serv27231/simon
Modified Files:
simon.cpp
Log Message:
Add missing code for f10 key, thanks to Jamieson
Stops multiple flashing star occuring on one character/object
Index: simon.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/simon.cpp,v
retrieving revision 1.289
retrieving revision 1.290
diff -u -d -r1.289 -r1.290
--- simon.cpp 10 Aug 2003 15:49:06 -0000 1.289
+++ simon.cpp 10 Aug 2003 15:58:38 -0000 1.290
@@ -1740,7 +1740,7 @@
}
void SimonEngine::f10_key() {
- HitArea *ha;
+ HitArea *ha, *dha;
uint count;
uint y_, x_;
byte *dst;
@@ -1763,7 +1763,21 @@
do {
if (ha->id != 0 && ha->flags & 0x20 && !(ha->flags & 0x40)) {
- if (ha->y >= 0xc8 || ha->y >= _vga_var8)
+ dha = _hit_areas;
+ if (ha->flags & 1) {
+ while (dha != ha && dha->flags != ha->flags)
+ ++dha;
+ if (dha != ha && dha->flags == ha->flags)
+ continue;
+ } else {
+ dha = _hit_areas;
+ while (dha != ha && dha->item_ptr != ha->item_ptr)
+ ++dha;
+ if (dha != ha && dha->item_ptr == ha->item_ptr)
+ continue;
+ }
+
+ if (ha->y >= 0xc8 || ha->y >= _vga_var8)
continue;
y_ = (ha->height >> 1) - 4 + ha->y;
More information about the Scummvm-git-logs
mailing list