[Scummvm-cvs-logs] CVS: scummvm/saga actor.cpp,1.172,1.173 game.cpp,1.93,1.94 interface.cpp,1.129,1.130 interface.h,1.70,1.71 saga.h,1.117,1.118 script.h,1.105,1.106

Andrew Kurushin h00ligan at users.sourceforge.net
Wed Aug 10 11:28:47 CEST 2005


Update of /cvsroot/scummvm/scummvm/saga
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16878

Modified Files:
	actor.cpp game.cpp interface.cpp interface.h saga.h script.h 
Log Message:
fixed iso convertion Rif position
add some IHNM panels

Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/actor.cpp,v
retrieving revision 1.172
retrieving revision 1.173
diff -u -d -r1.172 -r1.173
--- actor.cpp	10 Aug 2005 15:31:15 -0000	1.172
+++ actor.cpp	10 Aug 2005 18:27:16 -0000	1.173
@@ -647,7 +647,7 @@
 			distance = location.y;
 
 			location.u() = (angleLUT[angle][0] * distance) >> 8;
-			location.v() = (angleLUT[angle][1] * distance) >> 8;
+			location.v() = -(angleLUT[angle][1] * distance) >> 8;
 		} else {
 			angle = location.x & 15;
 			distance = location.y;

Index: game.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/game.cpp,v
retrieving revision 1.93
retrieving revision 1.94
diff -u -d -r1.93 -r1.94
--- game.cpp	9 Aug 2005 16:01:03 -0000	1.93
+++ game.cpp	10 Aug 2005 18:27:17 -0000	1.94
@@ -37,6 +37,15 @@
 #include "saga/scene.h"
 #include "saga/resnames.h"
 
+#define ITE_CONVERSE_MAX_TEXT_WIDTH (256 - 60)
+#define ITE_CONVERSE_TEXT_HEIGHT	10
+#define ITE_CONVERSE_TEXT_LINES     4
+
+//TODO: ihnm
+#define IHNM_CONVERSE_MAX_TEXT_WIDTH (256 - 60)
+#define IHNM_CONVERSE_TEXT_HEIGHT	10
+#define IHNM_CONVERSE_TEXT_LINES	10
+
 namespace Saga {
 
 static int detectGame(const FSList &fslist, bool mode = false, int start = -1);
@@ -66,10 +75,10 @@
 };
 
 static PanelButton ITE_ConversePanelButtons[] = {
-	{kPanelButtonConverseText,	52,6 + CONVERSE_TEXT_HEIGHT * 0, CONVERSE_MAX_TEXT_WIDTH,CONVERSE_TEXT_HEIGHT,	0,'1',0,	0,0,0},
-	{kPanelButtonConverseText,	52,6 + CONVERSE_TEXT_HEIGHT * 1, CONVERSE_MAX_TEXT_WIDTH,CONVERSE_TEXT_HEIGHT,	1,'2',0,	0,0,0},
-	{kPanelButtonConverseText,	52,6 + CONVERSE_TEXT_HEIGHT * 2, CONVERSE_MAX_TEXT_WIDTH,CONVERSE_TEXT_HEIGHT,	2,'3',0,	0,0,0},
-	{kPanelButtonConverseText,	52,6 + CONVERSE_TEXT_HEIGHT * 3, CONVERSE_MAX_TEXT_WIDTH,CONVERSE_TEXT_HEIGHT,	3,'4',0,	0,0,0},
+	{kPanelButtonConverseText,	52,6 + ITE_CONVERSE_TEXT_HEIGHT * 0, ITE_CONVERSE_MAX_TEXT_WIDTH,ITE_CONVERSE_TEXT_HEIGHT,	0,'1',0,	0,0,0},
+	{kPanelButtonConverseText,	52,6 + ITE_CONVERSE_TEXT_HEIGHT * 1, ITE_CONVERSE_MAX_TEXT_WIDTH,ITE_CONVERSE_TEXT_HEIGHT,	1,'2',0,	0,0,0},
+	{kPanelButtonConverseText,	52,6 + ITE_CONVERSE_TEXT_HEIGHT * 2, ITE_CONVERSE_MAX_TEXT_WIDTH,ITE_CONVERSE_TEXT_HEIGHT,	2,'3',0,	0,0,0},
+	{kPanelButtonConverseText,	52,6 + ITE_CONVERSE_TEXT_HEIGHT * 3, ITE_CONVERSE_MAX_TEXT_WIDTH,ITE_CONVERSE_TEXT_HEIGHT,	3,'4',0,	0,0,0},
 	{kPanelButtonArrow,			257,6,	9,6,	-1,'u',0,	0,4,2},
 	{kPanelButtonArrow,			257,41,	9,6,	1,'d',0,	1,5,3},
 };
@@ -145,6 +154,9 @@
 	ARRAYSIZE(ITE_MainPanelButtons),
 	ITE_MainPanelButtons,
 
+	ITE_CONVERSE_MAX_TEXT_WIDTH,
+	ITE_CONVERSE_TEXT_HEIGHT,
+	ITE_CONVERSE_TEXT_LINES,
 	4, 5,			// converse Up & Down button indexies
 	0, 148,			// converse panel offsets
 	ARRAYSIZE(ITE_ConversePanelButtons),
@@ -499,11 +511,38 @@
 // IHNM section
 
 static PanelButton IHNM_MainPanelButtons[] = {
-	{kPanelButtonVerb, 0,0, 0,0, kVerbWalkTo,' ',0, 0,0,0}, //TODO
+	{kPanelButtonVerb,		106,13,		114,30,	kVerbWalkTo,'w',0,	0,0,0}, //TODO: verb Sprite Numbers
+	{kPanelButtonVerb,		106,45,		114,30,	kVerbLookAt,'l',0,	0,0,0},
+	{kPanelButtonVerb,		106,77,		114,30, kVerbTake,'k',0,	0,0,0},
+	{kPanelButtonVerb,		106,109,	114,30, kVerbUse,'u',0,		0,0,0},
+	{kPanelButtonVerb,		223,13,		114,30, kVerbTalkTo,'t',0,	0,0,0},
+	{kPanelButtonVerb,		223,45,		114,30, kVerbSwallow,'s',0,	0,0,0},
+	{kPanelButtonVerb,		223,77,		114,30, kVerbGive,'g',0,	0,0,0},
+	{kPanelButtonVerb,		223,109,	114,30, kVerbPush,'p',0,	0,0,0},
+	{kPanelButtonArrow,		606,22,		20,25,	-1,'[',0,			0,0,0}, //TODO: arrow Sprite Numbers
+	{kPanelButtonArrow,		606,108,	20,25,	1,']',0,			0,0,0}
+//TODO:inventory
+/*
+	{kPanelButtonInventory,	181 + 32*0,6,	27,18,	0,'-',0,	0,0,0},
+	{kPanelButtonInventory,	181 + 32*1,6,	27,18,	1,'-',0,	0,0,0},
+	{kPanelButtonInventory,	181 + 32*2,6,	27,18,	2,'-',0,	0,0,0},
+	{kPanelButtonInventory,	181 + 32*3,6,	27,18,	3,'-',0,	0,0,0},
+
+	{kPanelButtonInventory,	181 + 32*0,27,	27,18,	4,'-',0,	0,0,0},
+	{kPanelButtonInventory,	181 + 32*1,27,	27,18,	5,'-',0,	0,0,0},
+	{kPanelButtonInventory,	181 + 32*2,27,	27,18,	6,'-',0,	0,0,0},
+	{kPanelButtonInventory,	181 + 32*3,27,	27,18,	7,'-',0,	0,0,0}
+*/
 };
 
 static PanelButton IHNM_ConversePanelButtons[] = {
-	{kPanelButtonConverseText, 0,0, 0,0, 0,'-',0, 0,0,0}, //TODO
+	{kPanelButtonConverseText,	117,18 + IHNM_CONVERSE_TEXT_HEIGHT * 0, IHNM_CONVERSE_MAX_TEXT_WIDTH,IHNM_CONVERSE_TEXT_HEIGHT,	0,'1',0,	0,0,0},
+	{kPanelButtonConverseText,	52,18 + IHNM_CONVERSE_TEXT_HEIGHT * 1, IHNM_CONVERSE_MAX_TEXT_WIDTH,IHNM_CONVERSE_TEXT_HEIGHT,	1,'2',0,	0,0,0},
+	{kPanelButtonConverseText,	52,18 + IHNM_CONVERSE_TEXT_HEIGHT * 2, IHNM_CONVERSE_MAX_TEXT_WIDTH,IHNM_CONVERSE_TEXT_HEIGHT,	2,'3',0,	0,0,0},
+	{kPanelButtonConverseText,	52,18 + IHNM_CONVERSE_TEXT_HEIGHT * 3, IHNM_CONVERSE_MAX_TEXT_WIDTH,IHNM_CONVERSE_TEXT_HEIGHT,	3,'4',0,	0,0,0},
+	//.....
+	{kPanelButtonArrow,			606,22,		20,25,	-1,'[',0,	0,0,0}, //TODO: arrow Sprite Numbers
+	{kPanelButtonArrow,			606,108,	20,25,	1,']',0,	0,0,0}
 };
 
 static PanelButton IHNM_OptionPanelButtons[] = {
@@ -556,6 +595,9 @@
 
 	-1, -1,		// converse Up & Down button indexies
 
+	IHNM_CONVERSE_MAX_TEXT_WIDTH,
+	IHNM_CONVERSE_TEXT_HEIGHT,
+	IHNM_CONVERSE_TEXT_LINES,
 	0, 0,		// converse panel offsets
 	ARRAYSIZE(IHNM_ConversePanelButtons),
 	IHNM_ConversePanelButtons,

Index: interface.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/interface.cpp,v
retrieving revision 1.129
retrieving revision 1.130
diff -u -d -r1.129 -r1.130
--- interface.cpp	10 Aug 2005 15:31:15 -0000	1.129
+++ interface.cpp	10 Aug 2005 18:27:17 -0000	1.130
@@ -62,6 +62,9 @@
 	-1,
 	-1,
 	-1,
+	-1,
+	-1,
+	-1,
 	-1
 };
 
@@ -1213,7 +1216,7 @@
 			event.time = 0;
 			event.param = _vm->_scene->getScriptModuleNumber();
 			event.param2 = script;
-			event.param3 = kVerbIHNMUse;		// Action
+			event.param3 = kVerbUse;		// Action
 			event.param4 = obj;	// Object
 			event.param5 = 0;	// With Object
 			event.param6 = obj;		// Actor
@@ -1882,7 +1885,7 @@
 		for (i = len; i >= 0; i--) {
 			c = _converseWorkString[i];
 
-			if ((c == ' ' || c == '\0') && (_vm->_font->getStringWidth(kSmallFont, _converseWorkString, i, kFontNormal) <= CONVERSE_MAX_TEXT_WIDTH)) {
+			if ((c == ' ' || c == '\0') && (_vm->_font->getStringWidth(kSmallFont, _converseWorkString, i, kFontNormal) <= _vm->getDisplayInfo().converseMaxTextWidth)) {
 				break;
 			}
 		}
@@ -1923,7 +1926,7 @@
 
 	_converseStartPos = 0;
 
-	end = _converseTextCount - CONVERSE_TEXT_LINES;
+	end = _converseTextCount - _vm->getDisplayInfo().converseTextLines;
 
 	if (end < 0)
 		end = 0;
@@ -1953,7 +1956,7 @@
 	char bullet[2] = {
 		(char)0xb7, 0
 	};
-	Rect rect(8, CONVERSE_TEXT_LINES * CONVERSE_TEXT_HEIGHT);
+	Rect rect(8, _vm->getDisplayInfo().converseTextLines * _vm->getDisplayInfo().converseTextHeight);
 	Point textPoint;
 
 	assert(_conversePanel.buttonsCount >= 6);
@@ -1966,7 +1969,7 @@
 
 	ds->drawRect(rect, kITEColorDarkGrey); //fill bullet place
 
-	for (int i = 0; i < CONVERSE_TEXT_LINES; i++) {
+	for (int i = 0; i < _vm->getDisplayInfo().converseTextLines; i++) {
 		relPos = _converseStartPos + i;
 
 		if (_converseTextCount <= relPos) {

Index: interface.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/interface.h,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -d -r1.70 -r1.71
--- interface.h	10 Aug 2005 13:56:51 -0000	1.70
+++ interface.h	10 Aug 2005 18:27:17 -0000	1.71
@@ -43,6 +43,9 @@
 	UPDATE_WHEELDOWN = 16
 };
 
+#define CONVERSE_MAX_TEXTS      64
+#define CONVERSE_MAX_WORK_STRING      128
+
 #define ITE_INVENTORY_SIZE 24
 
 #define VERB_STRLIMIT 32
@@ -51,11 +54,6 @@
 #define STATUS_TEXT_INPUT_MAX 256
 
 // Converse-specific stuff
-#define CONVERSE_MAX_TEXTS      64
-#define CONVERSE_MAX_TEXT_WIDTH (256 - 60)
-#define CONVERSE_TEXT_HEIGHT	10
-#define CONVERSE_TEXT_LINES     4
-#define CONVERSE_MAX_WORK_STRING      128
 
 enum PanelModes {
 	kPanelNull,

Index: saga.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/saga.h,v
retrieving revision 1.117
retrieving revision 1.118
diff -u -d -r1.117 -r1.118
--- saga.h	10 Aug 2005 15:01:23 -0000	1.117
+++ saga.h	10 Aug 2005 18:27:18 -0000	1.118
@@ -413,6 +413,9 @@
 	int mainPanelButtonsCount;
 	PanelButton *mainPanelButtons;
 
+	int converseMaxTextWidth;
+	int converseTextHeight;
+	int converseTextLines;
 	int converseUpButtonIndex;
 	int converseDownButtonIndex;
 

Index: script.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/script.h,v
retrieving revision 1.105
retrieving revision 1.106
diff -u -d -r1.105 -r1.106
--- script.h	10 Aug 2005 17:39:29 -0000	1.105
+++ script.h	10 Aug 2005 18:27:18 -0000	1.106
@@ -72,6 +72,11 @@
 	kVerbWalkOnly = 13,
 	kVerbLookOnly = 14,
 
+//additional IHNM
+	kVerbTake = 15,
+	kVerbSwallow = 16,
+	kVerbPush = 17,
+/*
 	kVerbIHNMNone = 0,
 	kVerbIHNMWalkTo = 1,
 	kVerbIHNMLookAt = 2,
@@ -81,8 +86,8 @@
 	kVerbIHNMSwallow = 6,
 	kVerbIHNMGive = 7,
 	kVerbIHNMPush = 8,
-
-	kVerbTypesMax = kVerbLookOnly + 1
+*/
+	kVerbTypesMax = kVerbPush + 1
 };
 
 #define STHREAD_TIMESLICE 8





More information about the Scummvm-git-logs mailing list