Issue information

Issue ID
#1467
Status
Unable to Fix
Severity
None
Started
Hercules Elf Bot
May 5, 2008 12:32
Last Post
Hercules Elf Bot
Feb 21, 2012 9:15
Confirmation
N/A

Hercules Elf Bot - May 5, 2008 12:32

Originally posted by [b]Wouter2004[/b]
http://www.eathena.ws/board/index.php?autocom=bugtracker&showbug=1467

In stage 60 of the sign quest you have to talk with the Archaeologist who is working on your starlight crumbles.
This part of this script, checks the current time, and adds a random number of 2~4 hours which need to pass before you can talk with him again.

CODE
} else if (signquest == 60) {
        if (gettime(3) == signmetzhour || gettime(3) == signmetzhour +1 || gettime(3) == signmetzhour +2 ....


The only problem is that it doesnt check the day.

So if you talk with him at 21.00 and the trigger is set on 23.00, he wont help you if you come back next day at 10.00 in the morning.
For some people this can be a problem, because I can imagine that some people play in the evening (23.00), but dont play during midnight (02.00).

Basicly the only thing which has to be made is a "week/day/hour variable".
Just make 1 variable which includes the number of the week, number of the day, and hour of the day (and add 2~4 hours).
Once the day has passed you should still be able to talk with him, because this is taken into account of the variable.

An example:

CODE
set signmettime, (gettime(5) *7 *24) + (gettime(4) *24) + gettime(3) + rand(2,4); // checks current time in hours and adds 2~4 hours

} else if (signquest == 60) {
        if ( signmettime <= (gettime(5) *7 *24) + (gettime(4) *24) + gettime(3) ) // checks current time in hours. If it is greater then the signmettime, it continues the dialogue


I hope this can be changed in the latest SVN (IMG:style_emoticons/default/wink.gif)

This post has been edited by Wouter2004: May 5 2008, 01:36 PM