- Messages
- 92
- Country

Hi everybody.
I'm working on a 2d cockpit c++ gauges for a glider from If My Heart Had Wings visual novel and I have a problem with master avionic switch.
For some reason the image visible is always an "off" one.
All other parts are ok (like tooltip and action when clicking - I can check that with 3d virtual cockpit I created earlier).
Here is it's current code:
file name "IMHHWFirstGlider.Avio.Switch.cpp"
and part of .h file about textures used in it:
part of main .cpp file for gauges:
and part of .rc file aobut those textures:
I'm working on a 2d cockpit c++ gauges for a glider from If My Heart Had Wings visual novel and I have a problem with master avionic switch.
For some reason the image visible is always an "off" one.
All other parts are ok (like tooltip and action when clicking - I can check that with 3d virtual cockpit I created earlier).
Here is it's current code:
Code:
// Set up gauge header
char avionic_gauge_name[] = GAUGE_NAME;
extern PELEMENT_HEADER avionic_list;
extern MOUSERECT avionic_mouse_rect[];
GAUGE_HEADER_FS700(GAUGE_W, avionic_gauge_name, &avionic_list, avionic_mouse_rect, 0, 0, 0, 0);
/////////////////////////////////////////////////////////////////////////////
FAILURE_RECORD avionic_fail[] =
{
{ FAIL_SYSTEM_ELECTRICAL_PANELS, FAIL_ACTION_ZERO },
{ FAIL_NONE, FAIL_ACTION_NONE }
};
/////////////////////////////////////////////////////////////////////////////
FLOAT64 FSAPI avionic_icon_cb(PELEMENT_ICON pelement)
{
switch (pelement->source_var.var_value.e)
{
case true:
return 0;
case false:
return 1;
default:
return 0;
}
}
MAKE_ICON
(
avionic_icon,
BMP_AVIO_ON_MAP_BACKGROUND,
NULL,
NULL,
IMAGE_USE_ERASE | IMAGE_USE_TRANSPARENCY,
0,
0, 0,
AVIONICS_MASTER_SWITCH, avionic_icon_cb,
ICON_SWITCH_TYPE_STEP_TO,
2,
0,
0
)
PELEMENT_HEADER avionic_icon_list[] =
{
&avionic_icon.header,
NULL
};
/////////////////////////////////////////////////////////////////////////////
MAKE_STATIC
(
avionic_background,
BMP_AVIO_OFF_MAP_BACKGROUND,
avionic_icon_list,
NULL,
IMAGE_USE_TRANSPARENCY,
0,
0, 0
)
PELEMENT_HEADER avionic_list = &avionic_background.header;
/////////////////////////////////////////////////////////////////////////////
MOUSE_BEGIN(avionic_mouse_rect, HELPID_GAUGE_AVIONICS_SWITCH, 0, 0)
MOUSE_CHILD_EVENT(0, 0, 29, 45, CURSOR_HAND, MOUSE_LEFTSINGLE, KEY_TOGGLE_AVIONICS_MASTER)
MOUSE_END
/////////////////////////////////////////////////////////////////////////////
#undef GAUGE_NAME
#undef GAUGEHDR_VAR_NAME
#undef GAUGE_W
and part of .h file about textures used in it:
Code:
/////////////////////////////////////////////////////////////////////////////
//
// Avionic switch
//
#define BMP_AVIO_ON_MAP_BACKGROUND 0x3700
#define BMP_AVIO_OFF_MAP_BACKGROUND 0x3701
part of main .cpp file for gauges:
Code:
/////////////////////////////////////////////////////////////////////////////
// Avionic Switch
/////////////////////////////////////////////////////////////////////////////
#define GAUGE_NAME "AvioSwitch"
#define GAUGEHDR_VAR_NAME gaugehdr_Switch
#define GAUGE_W 100
#include "IMHHWFirstGlider.Avio.Switch.cpp"
/////////////////////////////////////////////////////////////////////////////
// Gauge table entries
/////////////////////////////////////////////////////////////////////////////
GAUGE_TABLE_BEGIN()
GAUGE_TABLE_ENTRY(&gaugehdr_attitude)
GAUGE_TABLE_ENTRY(&gaugehdr_control_surfaces)
GAUGE_TABLE_ENTRY(&gaugehdr_fuel)
GAUGE_TABLE_ENTRY(&gaugehdr_fuel_selector)
GAUGE_TABLE_ENTRY(&gaugehdr_temperature)
GAUGE_TABLE_ENTRY(&gaugehdr_whiskey)
GAUGE_TABLE_ENTRY(&gaugehdr_flightmap)
GAUGE_TABLE_ENTRY(&gaugehdr_altitude)
GAUGE_TABLE_ENTRY(&gaugehdr_asi)
GAUGE_TABLE_ENTRY(&gaugehdr_g)
GAUGE_TABLE_ENTRY(&gaugehdr_vsi)
GAUGE_TABLE_ENTRY(&gaugehdr_vsi2)
GAUGE_TABLE_ENTRY(&gaugehdr_battery)
GAUGE_TABLE_ENTRY(&gaugehdr_Knob)
GAUGE_TABLE_ENTRY(&gaugehdr_Switch)
GAUGE_TABLE_END()
and part of .rc file aobut those textures:
Code:
/////////////////////////////////////////////////////////////////////////////
//
// Avionic switch
//
BMP_AVIO_ON_MAP_BACKGROUND BITMAP DISCARDABLE "res\\IMHHWFirstGlider.Avio.ON.BMP"
BMP_AVIO_OFF_MAP_BACKGROUND BITMAP DISCARDABLE "res\\IMHHWFirstGlider.Avio.OFF.BMP"
Last edited:

