mirror of https://github.com/OpenTTD/OpenTTD
(svn r24226) [1.2] -Backport from trunk:
- Fix: [Squirrel] Crash when trying to create an array with negative size [FS#5160] (r24153) - Fix: [NoAI] Do not return the last 'cached' speed of vehicles when they are stopped/crashed [FS#5157] (r24152) - Fix: [Script] Typo in script documentation (r24151) - Fix: Glass-sprite of bubble-generator was not drawn anymore for completely constructed tiles [FS#5143] (r24107)release/1.2
parent
7549982f12
commit
4e6310d848
|
@ -210,16 +210,22 @@ static SQInteger base_suspend(HSQUIRRELVM v)
|
|||
static SQInteger base_array(HSQUIRRELVM v)
|
||||
{
|
||||
SQArray *a;
|
||||
SQObject &size = stack_get(v,2);
|
||||
SQInteger nInitialSize = tointeger(stack_get(v,2));
|
||||
SQInteger ret = 1;
|
||||
if (nInitialSize < 0) {
|
||||
v->Raise_Error(_SC("can't create/resize array with/to size %d"), nInitialSize);
|
||||
nInitialSize = 0;
|
||||
ret = -1;
|
||||
}
|
||||
if(sq_gettop(v) > 2) {
|
||||
a = SQArray::Create(_ss(v),0);
|
||||
a->Resize(tointeger(size),stack_get(v,3));
|
||||
a->Resize(nInitialSize,stack_get(v,3));
|
||||
}
|
||||
else {
|
||||
a = SQArray::Create(_ss(v),tointeger(size));
|
||||
a = SQArray::Create(_ss(v),nInitialSize);
|
||||
}
|
||||
v->Push(a);
|
||||
return 1;
|
||||
return ret;
|
||||
}
|
||||
|
||||
static SQInteger base_type(HSQUIRRELVM v)
|
||||
|
|
|
@ -254,9 +254,8 @@ static void IndustryDrawBubbleGenerator( const TileInfo *ti)
|
|||
{
|
||||
if (IsIndustryCompleted(ti->tile)) {
|
||||
AddChildSpriteScreen(SPR_IT_BUBBLE_GENERATOR_BUBBLE, PAL_NONE, 5, _industry_anim_offs_bubbles[GetAnimationFrame(ti->tile)]);
|
||||
} else {
|
||||
AddChildSpriteScreen(SPR_IT_BUBBLE_GENERATOR_SPRING, PAL_NONE, 3, 67);
|
||||
}
|
||||
AddChildSpriteScreen(SPR_IT_BUBBLE_GENERATOR_SPRING, PAL_NONE, 3, 67);
|
||||
}
|
||||
|
||||
static void IndustryDrawToyFactory(const TileInfo *ti)
|
||||
|
|
|
@ -311,7 +311,8 @@
|
|||
{
|
||||
if (!IsValidVehicle(vehicle_id)) return -1;
|
||||
|
||||
return ::Vehicle::Get(vehicle_id)->GetDisplaySpeed(); // km-ish/h
|
||||
const ::Vehicle *v = ::Vehicle::Get(vehicle_id);
|
||||
return (v->vehstatus & (::VS_STOPPED | ::VS_CRASHED)) == 0 ? v->GetDisplaySpeed() : 0; // km-ish/h
|
||||
}
|
||||
|
||||
/* static */ ScriptVehicle::VehicleState ScriptVehicle::GetState(VehicleID vehicle_id)
|
||||
|
|
|
@ -213,7 +213,7 @@ public:
|
|||
|
||||
/**
|
||||
* Get the current speed of a vehicle.
|
||||
* @param vehicle_id The vehicle to get the age of.
|
||||
* @param vehicle_id The vehicle to get the speed of.
|
||||
* @pre IsValidVehicle(vehicle_id).
|
||||
* @return The current speed of the vehicle.
|
||||
* @note The speed is in OpenTTD's internal speed unit.
|
||||
|
@ -232,7 +232,7 @@ public:
|
|||
|
||||
/**
|
||||
* Get the running cost of this vehicle.
|
||||
* @param vehicle_id The vehicle to get the age of.
|
||||
* @param vehicle_id The vehicle to get the running cost of.
|
||||
* @pre IsValidVehicle(vehicle_id).
|
||||
* @return The running cost of the vehicle per year.
|
||||
* @note Cost is per year; divide by 365 to get per day.
|
||||
|
|
Loading…
Reference in New Issue