-
Posts
117 -
Joined
-
Last visited
-
Days Won
14
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by Panallox
-
-
http://www.youtube.com/watch?v=_s38F7UuVeE
Two Steps from Hell - Strength of a Thousand Men -
Update
It's important to note that r15998 appears to fix a long-standing issue that appears to have been present in rAthena for an extended period of time. For whatever reason, the instance variable storage system was not being initialised (thus instance variables were not being saved or recorded.) If anyone has any reports prior to r15998 of instance variables not working, please let me know. It baffled our team temporarily as to why this was the case in the source.
Thanks.
-
You should keep the values returned by search_str("set"), search_str("callfunc") and search_str("getelementofarray") into global variables to avoid searching for them at every occurrence of assignment statements and user-defined function calls.
Indeed, this was something I brought up in the staff channel on IRC. I've been trying to collect a list of additional changes that need committing, and this is on the list. You have a keen eye, great minds think alike
-
I don't think this is a feature rAthena really needs. It'd be nice, sure, but it's not something that affects every day scripting. You can just as easily convert strings into integers, and then process them accordingly:
set @type, ( getarg(0) == "mes" ? 1 : (getarg(0) == "next" ? 2 : 0) );
Besides, this would mean converting the current labelling system and would require much more fiddling around with the source. This might decrease backwards compatibility, or may affect the behaviour of the scripting engine. So, for the most part, I'd have to say I reject this proposal.
- 1
-
I think in line 1092 of script.c there is a mistake.
You're correct good sir. Thanks for pointing that out, wouldn't have seen it otherwise.
-
- Popular Post
- Popular Post
Summary
As of r15982, variables used within scripts can be directly assigned to as you would using another programming language. That is to say, that the following set of predicates will work:
@i = 1; @i++; @i *= 2; @i = @j = 1; @i -= @j; for( @i = 0; 10 > @i; @i++ ) { } while( (@i += 1) < 20 ) { }
Support for all of the major operator methods have been included (+=, -=, /=, *= etc.) This announcement is to ensure that any and all problems encountered while using this method of accessing variables must be reported, along with any traces you can possibly provide (and a clear example of the script is appreciated.)
This comes as a secondary update to the scripting engine to unify the language to conform to standards set by other languages. The scripting engine now supports both the direct invocation of user-defined functions (r15979 and r15981) and variable access systems (r15982.)
Notes
- This does not affect previous scripts at all. The new engine converts patterns that match var = value; to set(var, value); for backwards compatibility.
- Testing was performed using all of the operator methods, and was tested using loops. However, nested operations have not yet been thoroughly tested.
- 15
-
After reviewing this topic, I dove into the source and had a poke around and support for direct function invocation was added in r15979
As such, the following should now work:
function<tab>script<tab>helloworld<tab>{ mes "Hello " + getarg(0); return 1; } prontera,150,150,4<tab>script<tab>Say Hello!<tab>811,{ helloworld strcharinfo(0); close; }
- 3
-
You have my vote.
And on a related note, I do not envy whoever has to convert the packet database.
-
- 1
-
ATTN: i, too, am a girl on the internet.
I can totally collaborate this claim, this female has enormous breasts and is very much female.
Anyway, welcome aboard.
- 1
-
I don't have a real issue with this. Something just needs addressing in the patch though:
+ (sd->class_&JOBL_THIRD) && !(b_class&JOBL_THIRD) || // changing back from 3rd class
Should have brackets around it? That && is a segregate operator for the || operators before hand so this operation should really have brackets around it. As long as this has been tested and is confirmed working, +1 for implementation.
-
Indeed, temporary skill is stored as (skill.flag - SKILL_FLAG_REPLACE_LV_0), as far as I know skills granted permanently through scripts are removed when the player skill tree is normalized. In regards to that bug-report, all issues can be resolved by appending the skill onto the player skill tree: thus not being lost upon tree normalization.
-
1 8 5 1
-
Asynchronous.
-
11100010011
-
One thousand, eight hundred and one, or, eighteen hundred and one.
-
1761
1762
-
09ㄥƖ
-
Anyone please record that.
- Login
- Start recording
- Move to a monster so it appears on your screen
- Start hitting it so the HP bar will be displayed
- Stop recording and send me the record file
I want to check how they send the HP information
You're not going to get the official data from a screen recording you'd need packet captures of the HP bar updates.
- Login
-
Hm, never knew this was here. Well, might as well.
Me (on the left) with my friend Danny (right) at a rock club.
Me being totally gangster at a BBQ a few nights ago.
-
0o3263
-
Ple2OlCzPi??
Bonus points to the person who can calculate the encryption used. Everything in bold is the result of the encryption :3
And yes, the answer to the decryption is, of course, 1646
-
doc/script_commands
Ctrl+F
*getd
Enter
I love you.
- 1
-
i'm tempted to ask you why is there a cupcake
I'm tempted to ask why there wouldn't be a cupake?
We got a cupcake hater over here.
- 4
berserk remove two-hand quicken
in Source Support
Posted
Well, except that cancelling all buffs is disabled by default..
From conf/battle/skill.conf. Instead, assuming you're using renewal mode, find (in status.c):
Replace with: