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

From Graal Bible
No edit summary
 
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Scripting Reference]][[Category:Graal Client]]
==Release date==
==Release date==


September 15th 2006 for Windows and Linux
September 15th 2006 for Windows and Linux
September 18th 2006 for Mac
==Comments==
[[http://forums.graalonline.com/forums/showthread.php?t=68752 Graal Forums]]


==New Features==
==New Features==


* GUI
* GUI
** [[Creation/Dev/Script/Client/GuiControl|GuiControl]]: New events '''onStartDrag''' and '''onStopDrag''' when a control has been dragged with the mouse (canmove=true)
** [[Creation/Dev/Script/Client/GuiControl|GuiControl]]: New events ''onStartDrag'' and ''onStopDrag'' when a control has been dragged with the mouse (canmove=true)
** [[Creation/Dev/Script/Client/GuiControl|GuiControl]]: New function '''startDrag()''' to let the user move a control (only works when the mouse button is pressed)
** [[Creation/Dev/Script/Client/GuiControl|GuiControl]]: New function ''startDrag()'' to let the user move a control (only works when the mouse button is pressed)
** [[Creation/Dev/Script/Client/GuiStretchCtrl|GuiStretchCtrl]]: new GUI control which stretches the content to the current size
** [[Creation/Dev/Script/Client/GuiStretchCtrl|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
*** 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
** [[Creation/Dev/Script/Client/TShowImg|TShowImg]] / [[Creation/Dev/Script/Client/GuiShowImgCtrl|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)
** [[Creation/Dev/Script/Client/TGaniObject|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 [[Creation/Dev/Script/Client/TShowImg|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 (note: this can be added though if required and requested)
** 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==
Line 18: Line 43:
* GUI
* GUI
** [[Creation/Dev/Script/Client/TDrawingPanel|TDrawingPanel]]  / [[Creation/Dev/Script/Client/GuiDrawingPanel|GuiDrawingPanel]]: Drawing "TILES" has been fixed
** [[Creation/Dev/Script/Client/TDrawingPanel|TDrawingPanel]]  / [[Creation/Dev/Script/Client/GuiDrawingPanel|GuiDrawingPanel]]: Drawing "TILES" has been fixed
*Graphics
** Modified the text drawing to reduce the text-flickering problem

Latest revision as of 20:04, 17 February 2010

Release date

September 15th 2006 for Windows and Linux

September 18th 2006 for Mac

Comments

[Graal Forums]

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 (note: this can be added though if required and requested)
    • 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

  • Graphics
    • Modified the text drawing to reduce the text-flickering problem