fixed mask_index showing as color instead of sprite asset (thanks playerdash)

This commit is contained in:
Synthasmagoria 2025-12-15 23:04:19 +00:00
commit 46377438a4

View file

@ -1,247 +1,247 @@
<!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!--> <!--This Document is generated by GameMaker, if you edit it by hand then you do so at your own risk!-->
<object> <object>
<spriteName>&lt;undefined&gt;</spriteName> <spriteName>&lt;undefined&gt;</spriteName>
<solid>0</solid> <solid>0</solid>
<visible>-1</visible> <visible>-1</visible>
<depth>0</depth> <depth>0</depth>
<persistent>-1</persistent> <persistent>-1</persistent>
<parentName>objDebugList</parentName> <parentName>objDebugList</parentName>
<maskName>&lt;undefined&gt;</maskName> <maskName>&lt;undefined&gt;</maskName>
<events> <events>
<event eventtype="0" enumb="0"> <event eventtype="0" enumb="0">
<action> <action>
<libid>1</libid> <libid>1</libid>
<id>603</id> <id>603</id>
<kind>7</kind> <kind>7</kind>
<userelative>0</userelative> <userelative>0</userelative>
<isquestion>0</isquestion> <isquestion>0</isquestion>
<useapplyto>-1</useapplyto> <useapplyto>-1</useapplyto>
<exetype>2</exetype> <exetype>2</exetype>
<functionname></functionname> <functionname></functionname>
<codestring></codestring> <codestring></codestring>
<whoName>self</whoName> <whoName>self</whoName>
<relative>0</relative> <relative>0</relative>
<isnot>0</isnot> <isnot>0</isnot>
<arguments> <arguments>
<argument> <argument>
<kind>1</kind> <kind>1</kind>
<string>event_inherited(); <string>event_inherited();
enum __INSPECTOR_TYPES { enum __INSPECTOR_TYPES {
NOT_SET, REAL, STRING, ARRAY, BOOL, UNDEFINED, SPRITE_ASSET, COLOR, UNKNOWN NOT_SET, REAL, STRING, ARRAY, BOOL, UNDEFINED, SPRITE_ASSET, COLOR, UNKNOWN
} }
target = noone; target = noone;
box_padding = 4; box_padding = 4;
variable_values = -1; variable_values = -1;
variable_types = -1; variable_types = -1;
variable_names = -1; variable_names = -1;
variable_strings = -1; variable_strings = -1;
variable_strings_rendered = -1; variable_strings_rendered = -1;
variable_number = -1; variable_number = -1;
</string> </string>
</argument> </argument>
</arguments> </arguments>
</action> </action>
</event> </event>
<event eventtype="7" enumb="10"> <event eventtype="7" enumb="10">
<action> <action>
<libid>1</libid> <libid>1</libid>
<id>603</id> <id>603</id>
<kind>7</kind> <kind>7</kind>
<userelative>0</userelative> <userelative>0</userelative>
<isquestion>0</isquestion> <isquestion>0</isquestion>
<useapplyto>-1</useapplyto> <useapplyto>-1</useapplyto>
<exetype>2</exetype> <exetype>2</exetype>
<functionname></functionname> <functionname></functionname>
<codestring></codestring> <codestring></codestring>
<whoName>self</whoName> <whoName>self</whoName>
<relative>0</relative> <relative>0</relative>
<isnot>0</isnot> <isnot>0</isnot>
<arguments> <arguments>
<argument> <argument>
<kind>1</kind> <kind>1</kind>
<string>if (global.__synthasmagoria_debug_inspector_show_instance_vars) { <string>if (global.__synthasmagoria_debug_inspector_show_instance_vars) {
var _instance_variable_names = array_create(22); var _instance_variable_names = array_create(22);
var _instance_variable_types = array_create(22); var _instance_variable_types = array_create(22);
_instance_variable_names[0] = "solid"; _instance_variable_names[0] = "solid";
_instance_variable_types[0] = __INSPECTOR_TYPES.BOOL; _instance_variable_types[0] = __INSPECTOR_TYPES.BOOL;
_instance_variable_names[1] = "visible"; _instance_variable_names[1] = "visible";
_instance_variable_types[1] = __INSPECTOR_TYPES.BOOL; _instance_variable_types[1] = __INSPECTOR_TYPES.BOOL;
_instance_variable_names[2] = "persistent"; _instance_variable_names[2] = "persistent";
_instance_variable_types[2] = __INSPECTOR_TYPES.BOOL; _instance_variable_types[2] = __INSPECTOR_TYPES.BOOL;
_instance_variable_names[3] = "depth"; _instance_variable_names[3] = "depth";
_instance_variable_names[4] = "sprite_index"; _instance_variable_names[4] = "sprite_index";
_instance_variable_types[4] = __INSPECTOR_TYPES.SPRITE_ASSET; _instance_variable_types[4] = __INSPECTOR_TYPES.SPRITE_ASSET;
_instance_variable_names[5] = "sprite_width"; _instance_variable_names[5] = "sprite_width";
_instance_variable_names[6] = "sprite_height"; _instance_variable_names[6] = "sprite_height";
_instance_variable_names[7] = "sprite_xoffset"; _instance_variable_names[7] = "sprite_xoffset";
_instance_variable_names[8] = "sprite_yoffset"; _instance_variable_names[8] = "sprite_yoffset";
_instance_variable_names[9] = "image_alpha"; _instance_variable_names[9] = "image_alpha";
_instance_variable_names[10] = "image_angle"; _instance_variable_names[10] = "image_angle";
_instance_variable_names[11] = "image_blend"; _instance_variable_names[11] = "image_blend";
_instance_variable_types[11] = __INSPECTOR_TYPES.COLOR; _instance_variable_types[11] = __INSPECTOR_TYPES.COLOR;
_instance_variable_names[12] = "image_index"; _instance_variable_names[12] = "image_index";
_instance_variable_names[13] = "image_number"; _instance_variable_names[13] = "image_number";
_instance_variable_names[14] = "image_speed"; _instance_variable_names[14] = "image_speed";
_instance_variable_names[15] = "image_xscale"; _instance_variable_names[15] = "image_xscale";
_instance_variable_names[16] = "image_yscale"; _instance_variable_names[16] = "image_yscale";
_instance_variable_names[17] = "mask_index"; _instance_variable_names[17] = "mask_index";
_instance_variable_types[17] = __INSPECTOR_TYPES.COLOR; _instance_variable_types[17] = __INSPECTOR_TYPES.SPRITE_ASSET;
_instance_variable_names[18] = "bbox_bottom"; _instance_variable_names[18] = "bbox_bottom";
_instance_variable_names[19] = "bbox_left"; _instance_variable_names[19] = "bbox_left";
_instance_variable_names[20] = "bbox_right"; _instance_variable_names[20] = "bbox_right";
_instance_variable_names[21] = "bbox_top"; _instance_variable_names[21] = "bbox_top";
var _custom_instance_variable_names = variable_instance_get_names(target); var _custom_instance_variable_names = variable_instance_get_names(target);
var _custom_instance_variable_count = array_length_1d(_custom_instance_variable_names); var _custom_instance_variable_count = array_length_1d(_custom_instance_variable_names);
var _instance_variable_count = array_length_1d(_instance_variable_names); var _instance_variable_count = array_length_1d(_instance_variable_names);
variable_number = _instance_variable_count + _custom_instance_variable_count; variable_number = _instance_variable_count + _custom_instance_variable_count;
variable_names = array_create(variable_number); variable_names = array_create(variable_number);
variable_types = array_create(variable_number); variable_types = array_create(variable_number);
array_copy(variable_names, 0, _custom_instance_variable_names, 0, _custom_instance_variable_count); array_copy(variable_names, 0, _custom_instance_variable_names, 0, _custom_instance_variable_count);
array_copy(variable_names, _custom_instance_variable_count, _instance_variable_names, 0, _instance_variable_count); array_copy(variable_names, _custom_instance_variable_count, _instance_variable_names, 0, _instance_variable_count);
array_copy(variable_types, _custom_instance_variable_count, _instance_variable_types, 0, _instance_variable_count); array_copy(variable_types, _custom_instance_variable_count, _instance_variable_types, 0, _instance_variable_count);
} else { } else {
variable_names = variable_instance_get_names(target); variable_names = variable_instance_get_names(target);
variable_number = array_length_1d(variable_names); variable_number = array_length_1d(variable_names);
variable_types = array_create(variable_number); variable_types = array_create(variable_number);
} }
variable_values = array_create(variable_number); variable_values = array_create(variable_number);
variable_strings = array_create(variable_number); variable_strings = array_create(variable_number);
variable_strings_rendered = array_create(variable_number); variable_strings_rendered = array_create(variable_number);
var _val; var _val;
for (var i = 0; i &lt; variable_number; i++) { for (var i = 0; i &lt; variable_number; i++) {
_val = variable_instance_get(target, variable_names[i]); _val = variable_instance_get(target, variable_names[i]);
variable_values[i] = _val; variable_values[i] = _val;
switch (variable_types[i]) { switch (variable_types[i]) {
case __INSPECTOR_TYPES.NOT_SET: case __INSPECTOR_TYPES.NOT_SET:
if (is_undefined(_val)) { if (is_undefined(_val)) {
variable_strings[i] = string(_val); variable_strings[i] = string(_val);
variable_types[i] = __INSPECTOR_TYPES.UNDEFINED; variable_types[i] = __INSPECTOR_TYPES.UNDEFINED;
} else if (is_bool(_val)) { } else if (is_bool(_val)) {
if (_val) { if (_val) {
variable_strings[i] = "true"; variable_strings[i] = "true";
} else { } else {
variable_strings[i] = "false"; variable_strings[i] = "false";
} }
variable_types[i] = __INSPECTOR_TYPES.BOOL; variable_types[i] = __INSPECTOR_TYPES.BOOL;
} else if (is_real(_val)) { } else if (is_real(_val)) {
variable_strings[i] = string(_val); variable_strings[i] = string(_val);
variable_types[i] = __INSPECTOR_TYPES.REAL; variable_types[i] = __INSPECTOR_TYPES.REAL;
} else if (is_string(_val)) { } else if (is_string(_val)) {
variable_strings[i] = "'" + _val + "'"; variable_strings[i] = "'" + _val + "'";
variable_types[i] = __INSPECTOR_TYPES.STRING; variable_types[i] = __INSPECTOR_TYPES.STRING;
} else if (is_array(_val)) { } else if (is_array(_val)) {
var _buf_str = buffer_create(512, buffer_grow, 1); var _buf_str = buffer_create(512, buffer_grow, 1);
buffer_write(_buf_str, buffer_text, "["); buffer_write(_buf_str, buffer_text, "[");
for (var ii = 0, nn = array_length_1d(_val); ii &lt; nn; ii++) { for (var ii = 0, nn = array_length_1d(_val); ii &lt; nn; ii++) {
buffer_write(_buf_str, buffer_text, string(_val[ii]) + ", "); buffer_write(_buf_str, buffer_text, string(_val[ii]) + ", ");
} }
buffer_write(_buf_str, buffer_text, "]"); buffer_write(_buf_str, buffer_text, "]");
buffer_seek(_buf_str, buffer_seek_start, 0); buffer_seek(_buf_str, buffer_seek_start, 0);
variable_strings[i] = buffer_read(_buf_str, buffer_text); variable_strings[i] = buffer_read(_buf_str, buffer_text);
buffer_delete(_buf_str); buffer_delete(_buf_str);
variable_types[i] = __INSPECTOR_TYPES.ARRAY; variable_types[i] = __INSPECTOR_TYPES.ARRAY;
} else { } else {
variable_strings[i] = string(_val); variable_strings[i] = string(_val);
variable_types[i] = __INSPECTOR_TYPES.UNKNOWN; variable_types[i] = __INSPECTOR_TYPES.UNKNOWN;
} }
break; break;
case __INSPECTOR_TYPES.SPRITE_ASSET: case __INSPECTOR_TYPES.SPRITE_ASSET:
variable_strings[i] = sprite_get_name(_val) + " (" + string(_val) + ")"; variable_strings[i] = sprite_get_name(_val) + " (" + string(_val) + ")";
break; break;
case __INSPECTOR_TYPES.COLOR: case __INSPECTOR_TYPES.COLOR:
variable_strings[i] = "{r: " + string(color_get_red(_val)) + ", g: " + string(color_get_blue(_val)) + ", b: " + string(color_get_green(_val)) + "}"; variable_strings[i] = "{r: " + string(color_get_red(_val)) + ", g: " + string(color_get_blue(_val)) + ", b: " + string(color_get_green(_val)) + "}";
break; break;
case __INSPECTOR_TYPES.BOOL: case __INSPECTOR_TYPES.BOOL:
if (_val) { if (_val) {
variable_strings[i] = "true"; variable_strings[i] = "true";
} else { } else {
variable_strings[i] = "false"; variable_strings[i] = "false";
} }
break; break;
// note: the others aren't implemented so if a custom variable type is set then it will crash with DoAdd // note: the others aren't implemented so if a custom variable type is set then it will crash with DoAdd
} }
variable_strings_rendered[i] = variable_names[i] + ": " + variable_strings[i]; variable_strings_rendered[i] = variable_names[i] + ": " + variable_strings[i];
} }
header = object_get_name(target.object_index) + " inst_" + string(target.id); header = object_get_name(target.object_index) + " inst_" + string(target.id);
items = variable_strings_rendered; items = variable_strings_rendered;
event_inherited(); event_inherited();
if (global.__synthasmagoria_debug_inspector_show_instance_vars) { if (global.__synthasmagoria_debug_inspector_show_instance_vars) {
for (var i = array_length_1d(items) - array_length_1d(_instance_variable_names), n = array_length_1d(items); i &lt; n; i++) { for (var i = array_length_1d(items) - array_length_1d(_instance_variable_names), n = array_length_1d(items); i &lt; n; i++) {
item_colors[i] = c_lime; item_colors[i] = c_lime;
} }
} }
var _view = scrDebugInspectorGetView(0); var _view = scrDebugInspectorGetView(0);
x = target.bbox_right + box_padding - _view[0]; x = target.bbox_right + box_padding - _view[0];
if (x + width &gt;= _view[2]) { if (x + width &gt;= _view[2]) {
x = target.bbox_left - width - box_padding - _view[0]; x = target.bbox_left - width - box_padding - _view[0];
} }
y = target.bbox_bottom + box_padding - _view[1]; y = target.bbox_bottom + box_padding - _view[1];
y -= max(0, (y + height) - (_view[3] - box_padding)); y -= max(0, (y + height) - (_view[3] - box_padding));
x = clamp(x, _view[0] + box_padding, _view[2] - width - box_padding); x = clamp(x, _view[0] + box_padding, _view[2] - width - box_padding);
y = clamp(y, _view[1] + box_padding, _view[3] - height - box_padding); y = clamp(y, _view[1] + box_padding, _view[3] - height - box_padding);
</string> </string>
</argument> </argument>
</arguments> </arguments>
</action> </action>
</event> </event>
<event eventtype="8" enumb="75"> <event eventtype="8" enumb="75">
<action> <action>
<libid>1</libid> <libid>1</libid>
<id>603</id> <id>603</id>
<kind>7</kind> <kind>7</kind>
<userelative>0</userelative> <userelative>0</userelative>
<isquestion>0</isquestion> <isquestion>0</isquestion>
<useapplyto>-1</useapplyto> <useapplyto>-1</useapplyto>
<exetype>2</exetype> <exetype>2</exetype>
<functionname></functionname> <functionname></functionname>
<codestring></codestring> <codestring></codestring>
<whoName>self</whoName> <whoName>self</whoName>
<relative>0</relative> <relative>0</relative>
<isnot>0</isnot> <isnot>0</isnot>
<arguments> <arguments>
<argument> <argument>
<kind>1</kind> <kind>1</kind>
<string>var _view = scrDebugInspectorGetView(0); <string>var _view = scrDebugInspectorGetView(0);
if (instance_exists(target)) { if (instance_exists(target)) {
draw_set_color(c_black); draw_set_color(c_black);
draw_line(x, y - 1, target.x - _view[0], target.y - _view[1] - 1); draw_line(x, y - 1, target.x - _view[0], target.y - _view[1] - 1);
draw_line(x, y + 1, target.x - _view[0], target.y - _view[1] + 1); draw_line(x, y + 1, target.x - _view[0], target.y - _view[1] + 1);
draw_set_color(c_white); draw_set_color(c_white);
draw_line(x, y, target.x - _view[0], target.y - _view[1]); draw_line(x, y, target.x - _view[0], target.y - _view[1]);
} }
event_inherited(); event_inherited();
</string> </string>
</argument> </argument>
</arguments> </arguments>
</action> </action>
</event> </event>
</events> </events>
<PhysicsObject>0</PhysicsObject> <PhysicsObject>0</PhysicsObject>
<PhysicsObjectSensor>0</PhysicsObjectSensor> <PhysicsObjectSensor>0</PhysicsObjectSensor>
<PhysicsObjectShape>0</PhysicsObjectShape> <PhysicsObjectShape>0</PhysicsObjectShape>
<PhysicsObjectDensity>0.5</PhysicsObjectDensity> <PhysicsObjectDensity>0.5</PhysicsObjectDensity>
<PhysicsObjectRestitution>0.100000001490116</PhysicsObjectRestitution> <PhysicsObjectRestitution>0.100000001490116</PhysicsObjectRestitution>
<PhysicsObjectGroup>0</PhysicsObjectGroup> <PhysicsObjectGroup>0</PhysicsObjectGroup>
<PhysicsObjectLinearDamping>0.100000001490116</PhysicsObjectLinearDamping> <PhysicsObjectLinearDamping>0.100000001490116</PhysicsObjectLinearDamping>
<PhysicsObjectAngularDamping>0.100000001490116</PhysicsObjectAngularDamping> <PhysicsObjectAngularDamping>0.100000001490116</PhysicsObjectAngularDamping>
<PhysicsObjectFriction>0.200000002980232</PhysicsObjectFriction> <PhysicsObjectFriction>0.200000002980232</PhysicsObjectFriction>
<PhysicsObjectAwake>-1</PhysicsObjectAwake> <PhysicsObjectAwake>-1</PhysicsObjectAwake>
<PhysicsObjectKinematic>0</PhysicsObjectKinematic> <PhysicsObjectKinematic>0</PhysicsObjectKinematic>
<PhysicsShapePoints/> <PhysicsShapePoints/>
</object> </object>