Register FAQ Search Today's Posts Mark Forums Read
Go Back   JazzJackrabbit Community Forums » Maintenance & Feedback » JJ2+ Issue Tracker

Public test: warn about incorrect function signatures

Violet CLM

JCF Éminence Grise

Joined: Mar 2001

Posts: 11,063

Violet CLM has disabled reputation

Sep 30, 2024, 11:21 AM
Violet CLM is offline
Reply With Quote
Public test: warn about incorrect function signatures

Download

This build shows warnings in the chatlog (if AngelscriptDebug is true in plus.ini) when you try to write a hook function in a script file but you get the function signature wrong. For example, void onMain() is great, but void onMain(jjPLAYER@) will show a warning.

Nonstandard function names will not show any warnings. For example, if you write void onLevelMain(), JJ2+ has no way to guess what you really meant to do.

This does modify (standardize) the code used for registering and calling almost every hook function, so it's possible that some of them broke in the process. When testing this build, please make sure that all hooks work when written correctly, not just that they show warnings when written incorrectly.
__________________
Spaz Electro

JCF Member

Joined: Jan 1970

Posts: 9

Spaz Electro has disabled reputation

Oct 1, 2024, 05:56 AM
Spaz Electro is offline
Reply With Quote
`bool onPlayerTimerEnd(jjPLAYER@ play)` doesnt trigger the warning or any signature of that function
Violet CLM

JCF Éminence Grise

Joined: Mar 2001

Posts: 11,063

Violet CLM has disabled reputation

Oct 9, 2024, 03:53 PM
Violet CLM is offline
Reply With Quote
Okay, I added support for onReceive, onPlayerTimerEnd, and onGetPublicInterface. They're all handled a bit differently internally, but I suppose the user shouldn't need to care about that. Same download URL as before.
__________________
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT -8. The time now is 06:48 AM.