Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - metzzo

Qedo: HTML5 is async, which means the sprite size of image is known when it has properly loaded (GLB_ON_LOOP is then executed). If you want a loading screen use GLB_ON_LOADING and check whether the sprite has loaded with GETSPRITESIZE (which returns the proper size when it has sucessfully loaded the image)
spicypixel: Put the macro.bat into the IDE (blue one for example), when using the macro from the IDE GLB sets the specified variables automatically. For more information read the GLB help file which describes how to set macros in the IDE.
Cannot reproduce this bug, would you mind sending me an example code that causes the same issue or something comparable?

Please, before sending bug requests test whether it runs properly with the original GLBasic compiler, because if it does not, it is likely to be a problem with the code itself and not with 123 basic. 123 basic has already successfully a lot of very complex code samples (including ddgui, various samples and 123basic itself - which is around 10000 lines of code that uses every language feature of GLB) and check out the issue tracker on github, a lot of bugs are already known and will be fixed when I've got time
Yes because this is syntactically incorrect.

Here is the correct version:
Code (glbasic) Select

GLOBAL check_point_polygon[] AS cp
DIM check_point_polygon[1]


        PRINT stretch_y(check_point_polygon[]),0,100

FUNCTION stretch_y:check_point_polygon[] AS cp // "AS cp" otherwise it is an double array
        RETURN check_point_polygon[0].w+check_point_polygon[0].h

The problem is now fixed - dragging multiple file at once into the field was buggy.

Secondly, remove the SETCURRENTDIR, because all the assets are put into the / directory instead of /Media.

MrTAToad: Strange, Everything works OK here, have you tried refreshing?
kanonet: NET_ and SOCK_ is currently unimplemented, yes.
erico: I'm trying to fix it, seems to be either a problem with DRAWANIM or GRABSPRITE. The demo does load the images when compiled with the macro, but still is buggy when executed - I'm on it.
weird, does not happen to me. What browser are you using?
INLINE does not work.
POLYVECTOR partly works (tinting is limited though)
File I/O is 100% supported
3D does not work.
Yes, it was a bug and it has been fixed now, at least it works here.

Project is open source on GitHub .
Hey, I've managed to fix the bugs that caused your application to not run properly. The problem was mainly caused by a problem with ALPHAMODE and font kerning. Now it looks pretty much the same.

Thank you for sending me code, it really helped :)

Code (glbasic) Select
Fixed: If no channel is available in audio, the first one is taken and problems with playing multiple PLAYSOUNDS fixed with both sound systems
Fixed: WebAudio supports "pan" parameter in PLAYSOUND
Fixed: Font characters were moved by x+1, y+1 (caused some graphical gliches)
Fixed: Kerning is more robust & Font rendering less blurry
Fixed: ALPHAMODE +X works as expected
Fixed: Font kerning works with more different fonts (I hope all) and whitespaces have correct size
Thanks for reply, I've managed to fix the offset problem, well, at least I think (characters were moved by 1 on x/y which caused this graphical gliches), but this does not solve the color not being set properly (btw: you got a private message).
Thanks for the bug report. I've been hunting the bug down and the origin for this problem was that the engine messed around if two fonts were loaded (smalfont.png is always implicitly loaded) - causing the second one not being displayed. Then there was also an issue with the character height of the fonts). This is now fixed.

Your issue with loading gbap files is weird though, I do not encounter any of these problems. Would it be possible if you would send me an example.

Here is the changelog since last changelog:
Code (glbasic) Select
Changed: All "GLBasicScript" / "GLBScript" / "GLB" renamed to 123basic/OTT
Changed: Tested all samples in Firefox/Chrome/Opera/Safari (latest versions) and created issues for stuff that didnt work
Fixed: Touch on mobile browsers working again
Fixed: Font rendering on mobile platforms
Fixed: Firefox supports PLAYMUSIC
Fixed: SETSCREEN works again
Fixed: LOCAL sx, sy; GETDESKTOPSIZE sx, sy; SETSCREEN sx, sy, FALSE // no ugly scroll bar is visible
Fixed: ALPHABLEND 0 really resets alphablending
Changed: Made some tests ready for mobile (resolution is set according to DESKTOPSIZE): JumpIt, IsometricDemo (still very slow), JumpFrog, ...
Fixed: PRINT ignores unknown characters (0-26 charcode)
Fixed: SPRITE2MEM had wrong color format (ARGB instead of ABGR)
Fixed: CALLBYNAME rewritten and returns correct return value
Changed: Optimized Shadow Stack implementation in Debugging mode - should run now much faster
Fixed: SETSCREEN Fullscreen parameter functions now (does not use the HTML5 fullscreen API anymore, because it requires to be callen in a click/key event, which SETSCREEN is usually not -> sets the canvas size to innerWidth/innerHeight instead)
Added: IE 11 support
Added: Automatic test compilation and upload
Added: Audio system rewrite, uses now additionally Web Audio as playing Backend
Added: New demo (ParticleSystem)
Fixed: Multiple LOADFONT did not work
Fixed: Character height of some fonts was not set properly
Fixed: MUSICVOLUME works with new sound system
Yes this problem has been fixed, but not all demos were recompiled. Try the "JumpIt" demo, that one has been recompiled. I'm currently trying to automate uploading new demos onto the server, so i do not have to do this manually everytime I fix something.

1) To get you assets online (sound, sprites, ...), go to the "Asset" tab on the top and drag'n drop your files.
2) Download the data from github, then compile 123basic with GLB (open die gbap file).
Code (glbasic) Select
::Compile to HTML5 via 123basic
set OTTBASIC_PATH=C:\Users\Robert\Documents\GitHub\123-basic\
"%OTTBASIC_PATH%\123basic.exe" -N\"%GLB_PROJ_NAME%.gbap\"" -P\"%GLB_PROJ_PATH%\\\"-G"HTML5"

Adjust the OTTBASIC_PATH to the directory where the compiled EXE of 123basic is. Then copy the Macro to the macro you desire (Tools -> Macros -> Edit -> Blue for example). Now you should be able to compile your GLB project from the IDE with 123basic.
Theoretically WebSockets are a thing that most current browsers support. I personally already have written an application with WebSockets and I have quite some experience with them. I do not know for sure if it is possible to emulate all the NET... / SOCK... commands of GLB with them, because you do need a server inbetween connections.

How I'll implement them, I am not sure yet, as these features (like 3D) are very far in the future. Getting the current state bugfree and usable is a challenging job, that will surely take some time.

btw: I moved my todo list from a local file to GitHub. So you always know which bugs/enhancements/... I'm going to work on in future.