(svn r11341) -Codechange: add missing callback ID enums, add stub for house property 20 and reorder unimplemented action 0 properties
authorglx
Thu, 25 Oct 2007 23:24:28 +0000
changeset 7791 6d0d9804ef67
parent 7790 49e446d753b2
child 7792 e236261e5a58
(svn r11341) -Codechange: add missing callback ID enums, add stub for house property 20 and reorder unimplemented action 0 properties
src/newgrf.cpp
src/newgrf_callbacks.h
--- a/src/newgrf.cpp	Thu Oct 25 02:26:02 2007 +0000
+++ b/src/newgrf.cpp	Thu Oct 25 23:24:28 2007 +0000
@@ -497,6 +497,12 @@
 				rvi->tractive_effort = grf_load_byte(&buf);
 				break;
 
+			case 0x20: // Air drag
+				/** @todo Air drag for trains. */
+				grf_load_byte(&buf);
+				ret = true;
+				break;
+
 			case 0x21: // Shorter vehicle
 				rvi->shorten_factor = grf_load_byte(&buf);
 				break;
@@ -545,12 +551,6 @@
 				ei->base_intro = grf_load_dword(&buf);
 				break;
 
-			case 0x20: // Air drag
-				/** @todo Air drag for trains. */
-				grf_load_byte(&buf);
-				ret = true;
-				break;
-
 			default:
 				ret = true;
 				break;
@@ -638,6 +638,13 @@
 				ei->callbackmask = grf_load_byte(&buf);
 				break;
 
+			case 0x18: // Tractive effort
+			case 0x19: // Air drag
+				/** @todo Tractive effort and air drag for road vehicles. */
+				grf_load_byte(&buf);
+				ret = true;
+				break;
+
 			case 0x1A: // Refit cost
 				ei->refit_cost = grf_load_byte(&buf);
 				break;
@@ -663,13 +670,6 @@
 				ei->base_intro = grf_load_dword(&buf);
 				break;
 
-			case 0x18: // Tractive effort
-			case 0x19: // Air drag
-				/** @todo Tractive effort and air drag for road vehicles. */
-				grf_load_byte(&buf);
-				ret = true;
-				break;
-
 			default:
 				ret = true;
 				break;
@@ -748,6 +748,13 @@
 				ei->refit_cost = grf_load_byte(&buf);
 				break;
 
+			case 0x14: // Ocean speed fraction
+			case 0x15: // Canal speed fraction
+				/** @todo Speed fractions for ships on oceans and canals */
+				grf_load_byte(&buf);
+				ret = true;
+				break;
+
 			case 0x16: // Retire vehicle early
 				ei->retire_early = grf_load_byte(&buf);
 				break;
@@ -769,13 +776,6 @@
 				ei->base_intro = grf_load_dword(&buf);
 				break;
 
-			case 0x14: // Ocean speed fraction
-			case 0x15: // Canal speed fraction
-				/** @todo Speed fractions for ships on oceans and canals */
-				grf_load_byte(&buf);
-				ret = true;
-				break;
-
 			default:
 				ret = true;
 				break;
@@ -1394,6 +1394,12 @@
 				housespec->minimum_life = grf_load_byte(&buf);
 				break;
 
+			case 0x20: { // @todo Cargo acceptance watch list
+				byte count = grf_load_byte(&buf);
+				for (byte j = 0; j < count; j++) grf_load_byte(&buf);
+				ret = true;
+			} break;
+
 			default:
 				ret = true;
 				break;
--- a/src/newgrf_callbacks.h	Thu Oct 25 02:26:02 2007 +0000
+++ b/src/newgrf_callbacks.h	Thu Oct 25 23:24:28 2007 +0000
@@ -170,7 +170,16 @@
 	/** Called to determine if the industry can still accept or refuse more cargo arrival */
 	CBID_INDUSTRY_REFUSE_CARGO           = 0x3D,
 
-	/* There are no callbacks 0x3E - 0x142. */
+	/* There are no callbacks 0x3E - 0x13F */
+
+	/** Called for periodically starting or stopping the animation. */
+	CBID_STATION_ANIM_START_STOP         = 0x140, // not implemented
+
+	/** Called to determine station tile next animation frame. */
+	CBID_STATION_ANIM_NEXT_FRAME         = 0x141, // not implemented
+
+	/** Called to indicate how long the current animation frame should last. */
+	CBID_STATION_ANIMATION_SPEED         = 0x142, // not implemented
 
 	/** Called to determine whether a town building can be destroyed. */
 	CBID_HOUSE_DENY_DESTRUCTION          = 0x143,
@@ -187,7 +196,8 @@
 	/** Add an offset to the default sprite numbers to show another sprite. */
 	CBID_CANALS_SPRITE_OFFSET            = 0x147, // not implemented
 
-	/* There is no callback 0x148.*/
+	/** Called when a cargo type specified in property 20 is accepted. */
+	CBID_HOUSE_WATCHED_CARGO_ACCEPTED    = 0x148, // not implemented
 
 	/** Callback done for each tile of a station to check the slope. */
 	CBID_STATION_LAND_SLOPE_CHECK        = 0x149, // not implemented