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

From Graal Bible
Line 44: Line 44:


* Crashing
* Crashing
** fixed a crashing bug with GuiContextMenuCtrl which still received input after closing
** fixed a crashing bug with [[Creation/Dev/Script/Client/GuiContextMenuCtrl|GuiContextMenuCtrl]] which still received input after closing
** fixed crashes when destroying TStaticVar or GuiControls in certain cases
** fixed crashes when destroying [[Creation/Dev/Script/Client/TStaticVar|TStaticVar]] or [[Creation/Dev/Script/Client/GuiControl|GuiControls]] in certain cases
** fixed crashes on creating objects that had to do with optimizations
** fixed crashes on creating objects that had to do with optimizations
** Linux: fixed problems with X server errors
** Linux: fixed problems with X server errors


* Memory leaks
* Memory leaks
** several memory leaks with GuiMLTextCtrl have been fixed
** several memory leaks with [[Creation/Dev/Script/Client/GuiMLTextCtrl|GuiMLTextCtrl]] have been fixed
** requesturl memory leaks have been fixed
** requesturl memory leaks have been fixed


* GUI
* GUI
** putting controls inside sub-controls of GuiStretchCtrl is working better
** putting controls inside sub-controls of [[Creation/Dev/Script/Client/GuiStretchCtrl|GuiStretchCtrl]] is working better
** when a control uses a non-modal profile then it is not getting the keyboard input anymore when it is created/shown
** when a control uses a non-modal profile then it is not getting the keyboard input anymore when it is created/shown
** an onPlayerChanges event is invoked when the player has opened a PM from another player, so that scripted player lists can correctly hide the blinking PM icon
** an onPlayerChanges event is invoked when the player has opened a PM from another player, so that scripted player lists can correctly hide the blinking PM icon

Revision as of 08:57, 2 January 2007

Release date

December 21st 2006 for Mac, Linux and Windows

New Features

There are several improvements for Graal3D and the new flying technology which will announced once released.

  • Graphics
    • stretched graphics are drawn with better quality (on Windows)
    • tiles drawing has been made faster so that level switching is taking less time
    • zooming of players/npc has been improved so that sub-objects are displayed on the correct position
    • better clipping in the GUI on Windows - when using polygons or stretched rotated graphics then they are not overlapping other GUI controls anymore
    • 24bit are correctly displayed in alpha-transparent mode (mode 1) by default (as long as alpha is 1)
  • GUI
    • GuiMLTextCtrl:
      • support for more html tags:
        <ul>, <ol>, <li>, <hr>, <h1>...<h6>
      • uppercase tags are accepted now
      • variable htmlcompatibility=true for using normal html text (currently only sets ignorelinebreaks=true if in compatibility mode)
      • improved display of the body-background color so that it fills the whole parent color
      • display of body-background images
    • GuiShowImgCtrl:
      • when displaying a polygon then mouse clicks will only be accepted if it clicked on the actual polygon, this is e.g. used for the cards selection in the cards games
    • GuiTreeViewCtrl:
      • variable expandOnDoubleclick=false will disable nodes from expanding on double-click
    • GuiControl:
      • variable clipMove=false: allows the control to be moved outside of the parent bounds
  • Scripting
    • showimgs/findimgs now have a "spin" variable similar to projectiles, good for automatic rotation of images
    • new function waitfor(objectname,eventname,timeout) waits for an event on the specified object (empty -> for ourself) and then returns true; if the parameters are invalid or the timeout has been reached it will stop waiting and return false
    • when you call the function of another object and that function is calling sleep() or waitfor() then it will not return immediatelly anymore - it will instead wait until the called function is correctly returning and then also continue the caller script
    • when a function is not called then it will try to also display the name of the object for which the function didn't exist
    • the timevar2 has full precision on Windows now (was only milliseconds before)
  • General
    • improved login speed (you can faster switch to other servers)
    • it is possible to encode files
    • Linux/Mac: screenshots are saved into the ~/.graal/graal4/screenshots/ subfolder
    • downloading of web images is working better

Bug Fixes

  • Crashing
    • fixed a crashing bug with GuiContextMenuCtrl which still received input after closing
    • fixed crashes when destroying TStaticVar or GuiControls in certain cases
    • fixed crashes on creating objects that had to do with optimizations
    • Linux: fixed problems with X server errors
  • Memory leaks
    • several memory leaks with GuiMLTextCtrl have been fixed
    • requesturl memory leaks have been fixed
  • GUI
    • putting controls inside sub-controls of GuiStretchCtrl is working better
    • when a control uses a non-modal profile then it is not getting the keyboard input anymore when it is created/shown
    • an onPlayerChanges event is invoked when the player has opened a PM from another player, so that scripted player lists can correctly hide the blinking PM icon
  • Graphics
    • fixed shadowed text of different offset than (1,1) on Linux and Mac when not using true type fonts
    • correctly handling tiledefs (addtiledefs/2) with upper case letters
  • Scripting
    • when a sub variable (of any object) is not existing then it will not try to look for player.subvarname anymore