projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added functions to advance game and tile frame counter for MM engine
[rocksndiamonds.git]
/
src
/
editor.c
diff --git
a/src/editor.c
b/src/editor.c
index 0bc70107027007a97e789a2d298299c379afb4f2..671f6bf9385c9d7caa22b4692feb17b5e50920a3 100644
(file)
--- a/
src/editor.c
+++ b/
src/editor.c
@@
-9492,7
+9492,7
@@
static void DrawMagicBallContentAreas(void)
DrawText(x, y + 2 * tilesize, "active", font_nr);
}
DrawText(x, y + 2 * tilesize, "active", font_nr);
}
-static void DrawAndroidElementArea(
int element
)
+static void DrawAndroidElementArea(
void
)
{
int id = ED_DRAWING_ID_ANDROID_CONTENT;
int num_elements = level.num_android_clone_elements;
{
int id = ED_DRAWING_ID_ANDROID_CONTENT;
int num_elements = level.num_android_clone_elements;
@@
-9520,7
+9520,7
@@
static void DrawAndroidElementArea(int element)
MapDrawingArea(id);
}
MapDrawingArea(id);
}
-static void DrawGroupElementArea(
int element
)
+static void DrawGroupElementArea(
void
)
{
int id = ED_DRAWING_ID_GROUP_CONTENT;
int num_elements = group_element_info.num_elements;
{
int id = ED_DRAWING_ID_GROUP_CONTENT;
int num_elements = group_element_info.num_elements;
@@
-10059,7
+10059,7
@@
static void DrawPropertiesConfig(void)
MapCheckbuttonGadget(ED_CHECKBUTTON_ID_INITIAL_BALL_ACTIVE);
}
else if (properties_element == EL_EMC_ANDROID)
MapCheckbuttonGadget(ED_CHECKBUTTON_ID_INITIAL_BALL_ACTIVE);
}
else if (properties_element == EL_EMC_ANDROID)
- DrawAndroidElementArea(
properties_element
);
+ DrawAndroidElementArea();
}
if (IS_PLAYER_ELEMENT(properties_element))
}
if (IS_PLAYER_ELEMENT(properties_element))
@@
-10314,7
+10314,7
@@
static void DrawPropertiesConfig(void)
MapTextbuttonGadget(ED_TEXTBUTTON_ID_SAVE_AS_TEMPLATE_1);
// draw drawing area gadgets
MapTextbuttonGadget(ED_TEXTBUTTON_ID_SAVE_AS_TEMPLATE_1);
// draw drawing area gadgets
- DrawGroupElementArea(
properties_element
);
+ DrawGroupElementArea();
// draw text input gadgets
MapTextInputGadget(ED_TEXTINPUT_ID_ELEMENT_NAME);
// draw text input gadgets
MapTextInputGadget(ED_TEXTINPUT_ID_ELEMENT_NAME);
@@
-12904,8
+12904,6
@@
static void CopyLevelTemplateToUserLevelSet(char *levelset_subdir)
static void HandleDrawingAreas(struct GadgetInfo *gi)
{
static boolean started_inside_drawing_area = FALSE;
static void HandleDrawingAreas(struct GadgetInfo *gi)
{
static boolean started_inside_drawing_area = FALSE;
- static int last_sx = -1, last_sy = -1;
- static int last_sx2 = -1, last_sy2 = -1;
int id = gi->custom_id;
int type_id = gi->custom_type_id;
boolean button_press_event;
int id = gi->custom_id;
int type_id = gi->custom_type_id;
boolean button_press_event;
@@
-12967,15
+12965,12
@@
static void HandleDrawingAreas(struct GadgetInfo *gi)
sy2 = sy * 2 + dy;
}
sy2 = sy * 2 + dy;
}
- if (button_release_event)
- {
- last_sx = -1;
- last_sy = -1;
- last_sx2 = -1;
- last_sy2 = -1;
- }
- else if (!button_press_event)
+ if (!button_press_event && !button_release_event)
{
{
+ static int last_sx = -1;
+ static int last_sy = -1;
+ static int last_sx2 = -1;
+ static int last_sy2 = -1;
int old_element = (IN_LEV_FIELD(lx, ly) ? Tile[lx][ly] : EL_UNDEFINED);
boolean hires_drawing = (level.game_engine_type == GAME_ENGINE_TYPE_MM &&
isHiresTileElement(old_element) &&
int old_element = (IN_LEV_FIELD(lx, ly) ? Tile[lx][ly] : EL_UNDEFINED);
boolean hires_drawing = (level.game_engine_type == GAME_ENGINE_TYPE_MM &&
isHiresTileElement(old_element) &&
@@
-12985,12
+12980,12
@@
static void HandleDrawingAreas(struct GadgetInfo *gi)
if ((sx == last_sx && sy == last_sy && !hires_drawing) ||
(sx2 == last_sx2 && sy2 == last_sy2))
return;
if ((sx == last_sx && sy == last_sy && !hires_drawing) ||
(sx2 == last_sx2 && sy2 == last_sy2))
return;
- }
- last_sx = sx;
- last_sy = sy;
- last_sx2 = sx2;
- last_sy2 = sy2;
+ last_sx = sx;
+ last_sy = sy;
+ last_sx2 = sx2;
+ last_sy2 = sy2;
+ }
if (button_press_event)
started_inside_drawing_area = inside_drawing_area;
if (button_press_event)
started_inside_drawing_area = inside_drawing_area;
@@
-13123,22
+13118,19
@@
static void HandleDrawingAreas(struct GadgetInfo *gi)
if (button_release_event)
CopyLevelToUndoBuffer(UNDO_IMMEDIATE);
if (button_release_event)
CopyLevelToUndoBuffer(UNDO_IMMEDIATE);
- if (button)
- {
- SetDrawModeHiRes(new_element);
+ SetDrawModeHiRes(new_element);
-
if (getDrawModeHiRes())
-
{
-
sx = sx2;
-
sy = sy2;
-
}
+ if (getDrawModeHiRes())
+ {
+ sx = sx2;
+ sy = sy2;
+ }
-
if (!button_press_event)
-
DrawLine(last_sx, last_sy, sx, sy, new_element, TRUE);
+ if (!button_press_event)
+ DrawLine(last_sx, last_sy, sx, sy, new_element, TRUE);
- last_sx = sx;
- last_sy = sy;
- }
+ last_sx = sx;
+ last_sy = sy;
}
break;
}
break;
@@
-13321,11
+13313,11
@@
static void HandleCounterButtons(struct GadgetInfo *gi)
break;
case ED_COUNTER_ID_ANDROID_CONTENT:
break;
case ED_COUNTER_ID_ANDROID_CONTENT:
- DrawAndroidElementArea(
properties_element
);
+ DrawAndroidElementArea();
break;
case ED_COUNTER_ID_GROUP_CONTENT:
break;
case ED_COUNTER_ID_GROUP_CONTENT:
- DrawGroupElementArea(
properties_element
);
+ DrawGroupElementArea();
CopyGroupElementPropertiesToGame(properties_element);
break;
CopyGroupElementPropertiesToGame(properties_element);
break;
@@
-14227,7
+14219,8
@@
static void HandleControlButtons(struct GadgetInfo *gi)
id <= GADGET_ID_ELEMENTLIST_LAST)
{
int element_position = id - GADGET_ID_ELEMENTLIST_FIRST;
id <= GADGET_ID_ELEMENTLIST_LAST)
{
int element_position = id - GADGET_ID_ELEMENTLIST_FIRST;
- int new_element = editor_elements[element_position + element_shift];
+
+ new_element = editor_elements[element_position + element_shift];
if (IS_EDITOR_CASCADE(new_element))
{
if (IS_EDITOR_CASCADE(new_element))
{
@@
-14521,7
+14514,6
@@
static void ClearEditorGadgetInfoText(void)
void PrintEditorGadgetInfoText(struct GadgetInfo *gi)
{
char infotext[MAX_OUTPUT_LINESIZE + 1];
void PrintEditorGadgetInfoText(struct GadgetInfo *gi)
{
char infotext[MAX_OUTPUT_LINESIZE + 1];
- char shortcut[MAX_OUTPUT_LINESIZE + 1];
int max_infotext_len = getMaxInfoTextLength();
if (gi == NULL || strlen(gi->info_text) == 0)
int max_infotext_len = getMaxInfoTextLength();
if (gi == NULL || strlen(gi->info_text) == 0)
@@
-14536,6
+14528,8
@@
void PrintEditorGadgetInfoText(struct GadgetInfo *gi)
if (key)
{
if (key)
{
+ char shortcut[MAX_OUTPUT_LINESIZE + 1];
+
if (gi->custom_id == GADGET_ID_SINGLE_ITEMS)
sprintf(shortcut, " ('.' or '%c')", key);
else if (gi->custom_id == GADGET_ID_PICK_ELEMENT)
if (gi->custom_id == GADGET_ID_SINGLE_ITEMS)
sprintf(shortcut, " ('.' or '%c')", key);
else if (gi->custom_id == GADGET_ID_PICK_ELEMENT)
@@
-14579,7
+14573,6
@@
void HandleEditorGadgetInfoText(void *ptr)
static void HandleDrawingAreaInfo(struct GadgetInfo *gi)
{
static void HandleDrawingAreaInfo(struct GadgetInfo *gi)
{
- static int start_lx, start_ly;
int id = gi->custom_id;
int type_id = gi->custom_type_id;
int sx = gi->event.x;
int id = gi->custom_id;
int type_id = gi->custom_type_id;
int sx = gi->event.x;
@@
-14592,7
+14585,6
@@
static void HandleDrawingAreaInfo(struct GadgetInfo *gi)
int actual_drawing_function = drawing_function;
int max_infotext_len = getMaxInfoTextLength();
char infotext[MAX_OUTPUT_LINESIZE + 1];
int actual_drawing_function = drawing_function;
int max_infotext_len = getMaxInfoTextLength();
char infotext[MAX_OUTPUT_LINESIZE + 1];
- char *text;
infotext[0] = '\0'; // start with empty info text
infotext[0] = '\0'; // start with empty info text
@@
-14633,6
+14625,10
@@
static void HandleDrawingAreaInfo(struct GadgetInfo *gi)
{
if (button_status) // if (gi->state == GD_BUTTON_PRESSED)
{
{
if (button_status) // if (gi->state == GD_BUTTON_PRESSED)
{
+ static int start_lx = 0;
+ static int start_ly = 0;
+ char *text;
+
if (gi->event.type == GD_EVENT_PRESSED)
{
start_lx = lx;
if (gi->event.type == GD_EVENT_PRESSED)
{
start_lx = lx;