Creation/Dev/Releases/Client/4.11: Difference between revisions

From Graal Bible
Line 11: Line 11:
*** define ''clientwidth'' and ''clientheight'' (or ''clientextent'') to say which area should be stretched to the actual size
*** define ''clientwidth'' and ''clientheight'' (or ''clientextent'') to say which area should be stretched to the actual size
*** use ''globalToLocalCoord()'' and ''localToGlobalCoord()'' to translate between real mouse positions and scaled positions inside the control
*** use ''globalToLocalCoord()'' and ''localToGlobalCoord()'' to translate between real mouse positions and scaled positions inside the control
* Graphics
* Graphics
** Support for 2-bit pngs
** Support for 2-bit pngs
Line 27: Line 28:
*** the rotation angle and zoom factor is not sent to the other clients and is not accessible on serverside, you need to handle that by script
*** the rotation angle and zoom factor is not sent to the other clients and is not accessible on serverside, you need to handle that by script
** Rotations/stretch operations can be be stacked now (e.g. zoomed graphics inside zoomed ganis inside a [[Creation/Dev/Script/Client/GuiStretchCtrl|GuiStretchCtrl]])
** Rotations/stretch operations can be be stacked now (e.g. zoomed graphics inside zoomed ganis inside a [[Creation/Dev/Script/Client/GuiStretchCtrl|GuiStretchCtrl]])
* Scripting
** new variables ''mousebuttonsglobal'', ''leftmousebuttonglobal'', ''middlemousebuttonglobal'', ''rightmousebuttonglobal'' to detect mouse behaviour even if the mouse is caught in a GUI control


==Bug Fixes==
==Bug Fixes==

Revision as of 19:20, 15 September 2006

Release date

September 15th 2006 for Windows and Linux

New Features

  • GUI
    • GuiControl: New events onStartDrag and onStopDrag when a control has been dragged with the mouse (canmove=true)
    • GuiControl: New function startDrag() to let the user move a control (only works when the mouse button is pressed)
    • GuiStretchCtrl: new GUI control which stretches the content to the current size
      • define clientwidth and clientheight (or clientextent) to say which area should be stretched to the actual size
      • use globalToLocalCoord() and localToGlobalCoord() to translate between real mouse positions and scaled positions inside the control
  • Graphics
    • Support for 2-bit pngs
    • TShowImg / GuiShowImgCtrl: support for shadow
      • new variables textshadow, shadowoffset and shadowcolor
      • set textshadow = true to enable the shadow (defaults to nickname shadows)
      • modify shadowoffset or shadowcolor to set a custom shadow look
      • shadowoffset is by default {1,1}
      • shadowcolor is by default {0,0,0} (black)
    • TGaniObject: Objects using ganis can be rotated and stretched now
      • new variables rotation, stretchx, stretchy and zoom
      • works for players and npcs
      • ganis are also rotated and stretched when being shown using showimgs
      • body sprites are rotated and stretched as well
      • in old scripting engine you can modify the rotation and zoom via playerX and players[i].X (playerrotation, playerzoom, players[i].rotation etc. for players, players[-1].rotation for the current npc)
      • the rotation angle and zoom factor is not sent to the other clients and is not accessible on serverside, you need to handle that by script
    • Rotations/stretch operations can be be stacked now (e.g. zoomed graphics inside zoomed ganis inside a GuiStretchCtrl)
  • Scripting
    • new variables mousebuttonsglobal, leftmousebuttonglobal, middlemousebuttonglobal, rightmousebuttonglobal to detect mouse behaviour even if the mouse is caught in a GUI control

Bug Fixes