setting Link->Action to LA_DROWNING makes link turn invisible until he is pit warped
then he becomes visible again and is fine
I'm not sure if this is a bug but shouldn't he switch to his drowning animation?
setting Link->Action to LA_DROWNING makes link turn invisible until he is pit warped
then he becomes visible again and is fine
I'm not sure if this is a bug but shouldn't he switch to his drowning animation?
http://www.zoriarpg.com/zc/LoE_Userbar.png http://zoriarpg.com/zc/EiyuuUserbar.png
http://www.zoriarpg.com/zc/CIS_Original.pnghttp://www.zoriarpg.com/zc/CIS_II_Userbar.png
Latest ZC 2.53 (Win32) | (Technical Specification | Changelog)
Latest ZC 2.55(Win32) | 2.55 Modules | (Techical Specification | Changelog)
ZC Source Code | ZClaunch Source Code
Featured Scripts & Headers: RPG.zh ( v. a0.97.1 ) ( RPG.zh Thread ) | Zelda 3 Thief's Town Treasure Chest Minigame (ffc) | Bobomb (enemy)
ZScript & ZC-Related Pastebin | ZC Dev & Builds | ARCHIVED ZC Dev & Builds | YouTube Channel | Quests and ZScript Repository
All of the code that I create and publish here is free for use, modification and distribution under the GPL v2.0, or v3.0 where applicable.
I'm not sure I will check tomarrow
ZoriaRPG is right that this is undefined in 2.50.3 (and I don't think writing to Action will ever be supported, due to numerous possible issues with putting Link into an inconsistent state, but some functions to force Link to perform a limited set of actions is plausible.)
From the ZScript documentation:
I don't know the status of this in 2.54./**
* Link's current action. Use the LA_ constants in std.zh to set or
* compare this value. The effect of writing to this field is currently
* undefined.
*/
Writing to ->Action is in fact, supported in 2.50.x, but only to a limited set of actions that are known to work.
Item scripts, in particular, set Link->Action = LA_ATTACKING, many scripts force LA_NONE, or LA_GOTHURT, and so forth. The list of actions known to work (read-write), is as follows:
All of those work, and are safe.Code:const int LA_NONE = 0; const int LA_WALKING = 1; const int LA_ATTACKING = 2; const int LA_HOLD1LAND = 4; // One hand. Should only be used when not swimming. const int LA_HOLD2LAND = 5; // Both hands. Should only be used when not swimming. const int LA_GOTHURTLAND = 7; //Should only be used when not swimming. const int LA_GOTHURTWATER = 13; //Should only be used when swimming const int LA_HOLD1WATER = 14; //Should only be used when swimming const int LA_HOLD2WATER = 15; //Should only be used when swimming
I was planning to fix this variable, and make as many as possible work, or disable writing to them if that isn't viable, or logical. Most of the above are common enough in item, global, and ffc scripts that supporting them is crucial. I rarely see the *WATER actions called, but I have seen them. People often try to set some of the others, to no avail. Drowning, Diving, Dying, and a few others probably could be supported in the future, but are not defined, and writing to them is not advised at present.
P.S. Setting LA_SWIMMING may have been possible at one time, in the 2.5 beta phase too, before all the land swimming bugs were fixed, and you couldn't make Link swim on any time. Those fixes are likely why it does not work now (if it ever worked, at all, at all). Setting LA_DROWNING, is likely similar. I have never had a reason to try setting that one, and its action would be similar to LA_HOPPING; where writing to LA_HOPPING was disabled.
http://www.zoriarpg.com/zc/LoE_Userbar.png http://zoriarpg.com/zc/EiyuuUserbar.png
http://www.zoriarpg.com/zc/CIS_Original.pnghttp://www.zoriarpg.com/zc/CIS_II_Userbar.png
Latest ZC 2.53 (Win32) | (Technical Specification | Changelog)
Latest ZC 2.55(Win32) | 2.55 Modules | (Techical Specification | Changelog)
ZC Source Code | ZClaunch Source Code
Featured Scripts & Headers: RPG.zh ( v. a0.97.1 ) ( RPG.zh Thread ) | Zelda 3 Thief's Town Treasure Chest Minigame (ffc) | Bobomb (enemy)
ZScript & ZC-Related Pastebin | ZC Dev & Builds | ARCHIVED ZC Dev & Builds | YouTube Channel | Quests and ZScript Repository
All of the code that I create and publish here is free for use, modification and distribution under the GPL v2.0, or v3.0 where applicable.
There is a difference between "doesn't crash ZC" and "supported feature."
The zscript documentation seems fairly clear to me; is there documentation elsewhere stating that writing those actions is allowed? If not, said item scripts are relying on unsupported, undocumented, untested, and explicitly-stared undefined behavior (and said scripts may well fail to compile in the future).
Um.... so in Link and Zelda: Panoply of Calatia, I set Link->Action = LA_DROWNING whenever Link steps on a CT_SCRIPT2 combo (a pit), which would make him invisible, but only until the drowning action ended, and then would spawn him properly just as if he fell into walkable water. I also had him do this if he went above certain ComboDs in sideview screens (for lava combos). It worked fine in 2.50.2.... I haven't tried it in 2.50.3 or Zoria's betas yet, though.
The Legend of Zelda: The Inverse Mirror supporter
Behold, ye Banner of Gannons! Behold the power of regional changes and despair!
Let me know if this is broken in 2.50.3.
@DarkDragon : Keep in mind that while ZC had been updated, and many things were fixed, defined or otherwise resolved, there were almost no changes to the docs since the beta days, until I started rewriting them. THe documentation still stated that you had to set Link->Extend and clearly stated that Link->HitWidth, and such [I]worked[I], despite that Link->Extend didn't exist at all (until I personally added it). The docs are blatantly wrong in several spots. Have a look at Item->Frame, then try using it (read-only).
At various points, project devs went in and completed things such as some of the Link actions, and didn't flipping update the docs. Others [I]disabled[I] partially-implemented, poorly-implemented, broken, or otherwise faulty features, and didn't update the docs. Thus you have a user manual that instructs that some working features aren't implemented, and other non-working, or non-existent features, work flawlessly.
The fact is that the system docs that are distributed with 2.50.x are so outdated, that you cannot rely on them for factual information. Consider DrawInteger, which was clearly never bugtested. In the revised docs, I specified which actions are not usable, which are usable, and which remain undefined. It would be best better to properly implement these things, which is on my agenda, than to offer excuses in the future. Finishing it may have a similar effect, but it should be negligible compared to dropping it.
@Mitsukara : That particular behaviour could very well change if LA_DROWNING is ever properly coded. I had no idea that people used LA_DROWNING, so please do report if its behaviour had changed. Make a one-screen demo of how yo use it, too, please, and send that to me so that I can see what's happening.
http://www.zoriarpg.com/zc/LoE_Userbar.png http://zoriarpg.com/zc/EiyuuUserbar.png
http://www.zoriarpg.com/zc/CIS_Original.pnghttp://www.zoriarpg.com/zc/CIS_II_Userbar.png
Latest ZC 2.53 (Win32) | (Technical Specification | Changelog)
Latest ZC 2.55(Win32) | 2.55 Modules | (Techical Specification | Changelog)
ZC Source Code | ZClaunch Source Code
Featured Scripts & Headers: RPG.zh ( v. a0.97.1 ) ( RPG.zh Thread ) | Zelda 3 Thief's Town Treasure Chest Minigame (ffc) | Bobomb (enemy)
ZScript & ZC-Related Pastebin | ZC Dev & Builds | ARCHIVED ZC Dev & Builds | YouTube Channel | Quests and ZScript Repository
All of the code that I create and publish here is free for use, modification and distribution under the GPL v2.0, or v3.0 where applicable.
There are currently 1 users browsing this thread. (0 members and 1 guests)