diff options
Diffstat (limited to 'doc/woe_time_explanation.txt')
-rw-r--r-- | doc/woe_time_explanation.txt | 220 |
1 files changed, 110 insertions, 110 deletions
diff --git a/doc/woe_time_explanation.txt b/doc/woe_time_explanation.txt index 7701107a1..019d88059 100644 --- a/doc/woe_time_explanation.txt +++ b/doc/woe_time_explanation.txt @@ -1,111 +1,111 @@ -//| ~~~~~ How to set WoE times, by erKURITA: ~~~~~
-//|
-//| Basically, there are 2 commands that affects the WoE times,
-//| OnClock<time>: and gettime(<type).
-//|
-//| OnClock<time> runs when the said time where <time> is has been reached.
-//| The format of time is hhmm, being h = hour, m = minute.
-//| OnClock2350: would run at 23:50 on Computer's time.
-//|
-//| gettime(<type) is a function which is used to make a check
-//| for a desired amount of information regarding time. The types are:
-//| 1 - Seconds (of a minute)
-//| 2 - Minutes (of an hour)
-//| 3 - Hour (of a day). Hour goes from 0 to 23.
-//| 4 - Week day (0 for Sunday, 6 is Saturday)
-//| 5 - Day of the month.
-//| 6 - Number of the month.
-//| 7 - Year.
-//| 8 - Day of the year.
-//|
-//| Days (explained later) :
-//| Monday = 1
-//| Tuesday = 2
-//| Wednesday = 3
-//| Thursday = 4
-//| Friday = 5
-//| Saturday = 6
-//| Sunday = 7
-//|
-//| This way, we can check for a desired minute, hour, day, month, etc.
-//|
-//| Now the structure:
-//|
-//| OnClock2100: //start time for Tues(2), Thurs(4)
-//| OnClock2300: //end time for Tues(2), Thurs(4)
-//| OnClock1600: //start time for Sat(6)
-//| OnClock1800: //end time for Sat(6)
-//|
-//| These 4 labels will run one after the other. It's acomodated so,
-//| The Tuesday at 21:00 and 23:00 they will run, and go to the next
-//| part of the script:
-//|
-//| if((gettime(4)==2) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start;
-//| if((gettime(4)==4) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start;
-//| if((gettime(4)==6) && (gettime(3)>=16 && gettime(3)<18)) goto L_Start;
-//|
-//| This part will check for the times. Since both Starting and Ending times
-//| run through the same chain of commands, there are necesary checks to ensure
-//| it's the right time. Let's take the following example:
-//|
-//| if((gettime(4)==2) && (gettime(3)>=21 && gettime(3)<23))
-//|
-//| The first gettime is checking for a type 4, the day of the week, and it's
-//| comparing it to the one desired, which is 2, that's Tuesday. If the comparation
-//| is true and both sides are equal, it will return 1. 1 means true, 0 means false
-//| in comparations and conditions.
-//|
-//| The second gettime is checking for a type 3, which is the hour, and it's
-//| comparing it to 21, and if the first part is greater or equal (>=) than the second,
-//| the comparation will return 1.
-//|
-//| The third and last gettime is checking again for the hour, but the time has to be less
-//| than the said time, in this case, 23.
-//|
-//| Now, look at the parentheses. Parentheses are very important when making comparations
-//| and conditions. Check the order of these. I'll place dummy characters for this example:
-//|
-//| if ((X && (Y && Z)) goto L_Start;
-//|
-//| It's saying, if Y and Z are true, the condition meets. Now let's replace that comparation
-//| with another dummy character. We're doing (Y && Z) = G:
-//|
-//| if (X && G) goto L_Start;
-//|
-//| It's saying, if X and G are true, the condition meets, thus it has to go to L_Start.
-//|
-//| Now, the last part of the script, regarding the end of WoE time:
-//|
-//| if((gettime(4)==2) && (gettime(3)==23)) goto L_End;
-//| if((gettime(4)==4) && (gettime(3)==23)) goto L_End;
-//| if((gettime(4)==6) && (gettime(3)==18)) goto L_End;
-//| end;
-//|
-//| This is the same as before, but it's checking for the day in the first gettime, and
-//| the hour on the second. If both conditions are true, the WoE will end. We're checking
-//| here for the end time, not the start.
-//|
-//| Another important thing is OnAgitInit: . This special label will be run as soon as the
-//| castle data is loaded from the char data. So it will check for the above start and end time
-//| to see if it's in WoE time, hence why the hours has to be checked.
-//|
-//| Now a example of how to set the WoE so it starts on Monday, at 4 pm and ends up at 10 pm:
-//|
-//| OnClock1600: //| 16:00 = 4 pm
-//| OnClock2200: //| 22:00 = 10 pm
-//|
-//| OnAgitInit: //| there has to be ONLY ONE of these labels, so put the OnClock above this
-//| //| and the checks below.
-//|
-//| if ((gettime(4)==1) && (gettime(3)>=16 && gettime(3)<22)) goto L_Start;
-//|
-//| if ((gettime(4)==1) && (gettime(3)==22) goto L_End;
-//| end;//| VERY IMPORTANT TO PLACE AND END AFTER THE LAST END CHECK. You don't want to
-//| //| start the WoE w/o being on the right times/day
-//|
-//| I hope this has been clear enough. Remember to put the checks in a logical way, e.g:
-//| Monday checks first, then Thursday, etc.
-//| Any questions Pm me (erKURITA) or go to irc channel on irc.deltaanime.net in #athena
-//| channel. Do not PM on IRC w/o asking please.
-//|
+//| ~~~~~ How to set WoE times, by erKURITA: ~~~~~ +//| +//| Basically, there are 2 commands that affects the WoE times, +//| OnClock<time>: and gettime(<type). +//| +//| OnClock<time> runs when the said time where <time> is has been reached. +//| The format of time is hhmm, being h = hour, m = minute. +//| OnClock2350: would run at 23:50 on Computer's time. +//| +//| gettime(<type) is a function which is used to make a check +//| for a desired amount of information regarding time. The types are: +//| 1 - Seconds (of a minute) +//| 2 - Minutes (of an hour) +//| 3 - Hour (of a day). Hour goes from 0 to 23. +//| 4 - Week day (0 for Sunday, 6 is Saturday) +//| 5 - Day of the month. +//| 6 - Number of the month. +//| 7 - Year. +//| 8 - Day of the year. +//| +//| Days (explained later) : +//| Monday = 1 +//| Tuesday = 2 +//| Wednesday = 3 +//| Thursday = 4 +//| Friday = 5 +//| Saturday = 6 +//| Sunday = 7 +//| +//| This way, we can check for a desired minute, hour, day, month, etc. +//| +//| Now the structure: +//| +//| OnClock2100: //start time for Tues(2), Thurs(4) +//| OnClock2300: //end time for Tues(2), Thurs(4) +//| OnClock1600: //start time for Sat(6) +//| OnClock1800: //end time for Sat(6) +//| +//| These 4 labels will run one after the other. It's acomodated so, +//| The Tuesday at 21:00 and 23:00 they will run, and go to the next +//| part of the script: +//| +//| if((gettime(4)==2) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start; +//| if((gettime(4)==4) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start; +//| if((gettime(4)==6) && (gettime(3)>=16 && gettime(3)<18)) goto L_Start; +//| +//| This part will check for the times. Since both Starting and Ending times +//| run through the same chain of commands, there are necesary checks to ensure +//| it's the right time. Let's take the following example: +//| +//| if((gettime(4)==2) && (gettime(3)>=21 && gettime(3)<23)) +//| +//| The first gettime is checking for a type 4, the day of the week, and it's +//| comparing it to the one desired, which is 2, that's Tuesday. If the comparation +//| is true and both sides are equal, it will return 1. 1 means true, 0 means false +//| in comparations and conditions. +//| +//| The second gettime is checking for a type 3, which is the hour, and it's +//| comparing it to 21, and if the first part is greater or equal (>=) than the second, +//| the comparation will return 1. +//| +//| The third and last gettime is checking again for the hour, but the time has to be less +//| than the said time, in this case, 23. +//| +//| Now, look at the parentheses. Parentheses are very important when making comparations +//| and conditions. Check the order of these. I'll place dummy characters for this example: +//| +//| if ((X && (Y && Z)) goto L_Start; +//| +//| It's saying, if Y and Z are true, the condition meets. Now let's replace that comparation +//| with another dummy character. We're doing (Y && Z) = G: +//| +//| if (X && G) goto L_Start; +//| +//| It's saying, if X and G are true, the condition meets, thus it has to go to L_Start. +//| +//| Now, the last part of the script, regarding the end of WoE time: +//| +//| if((gettime(4)==2) && (gettime(3)==23)) goto L_End; +//| if((gettime(4)==4) && (gettime(3)==23)) goto L_End; +//| if((gettime(4)==6) && (gettime(3)==18)) goto L_End; +//| end; +//| +//| This is the same as before, but it's checking for the day in the first gettime, and +//| the hour on the second. If both conditions are true, the WoE will end. We're checking +//| here for the end time, not the start. +//| +//| Another important thing is OnAgitInit: . This special label will be run as soon as the +//| castle data is loaded from the char data. So it will check for the above start and end time +//| to see if it's in WoE time, hence why the hours has to be checked. +//| +//| Now a example of how to set the WoE so it starts on Monday, at 4 pm and ends up at 10 pm: +//| +//| OnClock1600: //| 16:00 = 4 pm +//| OnClock2200: //| 22:00 = 10 pm +//| +//| OnAgitInit: //| there has to be ONLY ONE of these labels, so put the OnClock above this +//| //| and the checks below. +//| +//| if ((gettime(4)==1) && (gettime(3)>=16 && gettime(3)<22)) goto L_Start; +//| +//| if ((gettime(4)==1) && (gettime(3)==22) goto L_End; +//| end;//| VERY IMPORTANT TO PLACE AND END AFTER THE LAST END CHECK. You don't want to +//| //| start the WoE w/o being on the right times/day +//| +//| I hope this has been clear enough. Remember to put the checks in a logical way, e.g: +//| Monday checks first, then Thursday, etc. +//| Any questions Pm me (erKURITA) or go to irc channel on irc.deltaanime.net in #athena +//| channel. Do not PM on IRC w/o asking please. +//| //| ~ erKURITA
\ No newline at end of file |