}
}
-void configureXonoticCharmapXonoticCharmap(entity me, entity theTextbox)
+void XonoticCharmap_configureXonoticCharmap(entity me, entity theTextbox)
{
me.controlledTextbox = theTextbox;
me.configureImage(me, me.image);
}
-float mouseMoveXonoticCharmap(entity me, vector coords)
+float XonoticCharmap_mouseMove(entity me, vector coords)
{
float x, y, c;
x = floor(coords_x * 16);
return 0;
}
c = y * 16 + x;
- if(c != me.mouseSelectedCharacterCell)
+ if(c != me.mouseSelectedCharacterCell || me.mouseSelectedCharacterCell != me.selectedCharacterCell)
me.mouseSelectedCharacterCell = me.selectedCharacterCell = c;
return 1;
}
-float mouseDragXonoticCharmap(entity me, vector coords)
+float XonoticCharmap_mouseDrag(entity me, vector coords)
{
return me.mouseMove(me, coords);
}
-float mousePressXonoticCharmap(entity me, vector coords)
+float XonoticCharmap_mousePress(entity me, vector coords)
{
me.mouseMove(me, coords);
if(me.mouseSelectedCharacterCell >= 0)
}
return 1;
}
-float mouseReleaseXonoticCharmap(entity me, vector coords)
+float XonoticCharmap_mouseRelease(entity me, vector coords)
{
if(!me.pressed)
return 0;
me.pressed = 0;
return 1;
}
-float keyDownXonoticCharmap(entity me, float key, float ascii, float shift)
+float XonoticCharmap_keyDown(entity me, float key, float ascii, float shift)
{
switch(key)
{
case K_LEFTARROW:
+ case K_KP_LEFTARROW:
me.selectedCharacterCell = mod(me.selectedCharacterCell + 159, 160);
return 1;
case K_RIGHTARROW:
+ case K_KP_RIGHTARROW:
me.selectedCharacterCell = mod(me.selectedCharacterCell + 1, 160);
return 1;
case K_UPARROW:
+ case K_KP_UPARROW:
me.selectedCharacterCell = mod(me.selectedCharacterCell + 144, 160);
return 1;
case K_DOWNARROW:
+ case K_KP_DOWNARROW:
me.selectedCharacterCell = mod(me.selectedCharacterCell + 16, 160);
return 1;
case K_HOME:
+ case K_KP_HOME:
me.selectedCharacterCell = 0;
return 1;
case K_END:
+ case K_KP_END:
me.selectedCharacterCell = 159;
return 1;
case K_SPACE:
case K_ENTER:
+ case K_KP_ENTER:
case K_INS:
+ case K_KP_INS:
me.controlledTextbox.enterText(me.controlledTextbox, CharMap_CellToChar(me.selectedCharacterCell));
return 1;
default:
return me.controlledTextbox.keyDown(me.controlledTextbox, key, ascii, shift);
}
}
-void focusLeaveXonoticCharmap(entity me)
+void XonoticCharmap_focusLeave(entity me)
{
me.controlledTextbox.saveCvars(me.controlledTextbox);
}
-void drawXonoticCharmap(entity me)
+void XonoticCharmap_draw(entity me)
{
if(me.focused)
{