Hello all

I am working on a new player tour quest that will help them get familiarized with the server and some of it's locations/custom features. They will receive a book that lists 12 locations they need to find, some in Britain and some outside. When they find location (landmark) they will open the book, click the button for that landmark, and target the landmark stone to show they were there. I'd like the book to somehow update so that it checks off that location for them. That's where I'm stuck.

afiles.iclanwebsites.com_abracadabrauo_tourbookgump.jpg

I had two different ideas for how to mark the book but can't figure out how to do either of them, so I'll present these ideas and see if anyone has a suggestion. I'm also open to alternatives. In the gump above it could change the jewel button to the X button(normalID 3 in gumpstudio) when marked, as shown. The other idea would be to turn the text of the label to another color (labels can be hued).

Attached is the script for the gump, baselandmark, and an example of a landmark stone. Please let me know if I can provide anything else or clarify anything.

Thanks as always for your help!
 

Attachments

  • upload_2017-7-14_6-54-12.png
    upload_2017-7-14_6-54-12.png
    250.2 KB · Views: 10
  • TourBookGump.cs
    4.9 KB · Views: 10
  • BaseLandmark.cs
    1.2 KB · Views: 4
  • GoldVendorsLandmark.cs
    959 bytes · Views: 3
Have not had time to look close at this but here are two ideas that may help.
1) have six Tags applied to the new characters. When they find a location a Tag gets removed. Then have the Book Gump present the Check Box you want when they open the gump depending on the corresponding Tags the character has. No Tags = all Check Marks.
2) Drop six invisible little markers (maybe a diamond graphic) in new characters packs. The markers would correspond to the six locations and one would be deleted each time they found the location. Then (as above) the book gump would check their pack and display the proper Check Box.

Both of these work similar and the first option is probably best (if you are comfortable with Tags)

You are on to a nice idea . . good luck

*bows*
 
Hey PigPen - ty for your suggestions. However bear in mind there are a total of 12 locations, six on a page.

I did think about presenting a new gump with the updated landmark in question,however if I'm thinking about this right I'd need to account for every possible combination and according to google that'd be like 480 million possible combinations.

Suggestion 2 seems to be similar to where I was going, which is to update the image in the gump each time the landmark is identified - but I don't know how to do that (code wise) which is why I'm here.

Maybe when you have more time you can take a look at the code I uploaded and see if you have a way to do that?
 
Well I didnt look at the code so it may be different of what your structure is. But something like that.
Code:
if(book.landmarks[i].Visited)
{
    AddLabel(....);
}
else
{
    AddButton(....);
}
 
I tried this but it didn't work - not sure what else to try. 67 is a green hue to the label.

Code:
 public virtual void StampBook(Mobile from, object target)
        {
           
           
                Item item = (Item)target;

               if (item is GoldVendorsLandmark)

                {

                    AddLabel(255, 155, 67, @"Gold Vendors");
                    from.SendGump(new TourBookGump());
               

                }

                else if (item is ColoredCanvasLandmark)
                {

                    AddLabel(60, 115, 67, @"Colored Canvas");
                    from.SendGump(new TourBookGump());

            }
               



        }
 
Sorry . . did not realize there were 12 locations. In that case I would try to use Character (or even Account) Tags instead of Invisible Markers in the character's backpack. Actually you may prefer an Account Tag so they would not have to repeat this with each character they create.

You could have a NPC selling 'Explorer' books. Maybe a book for each facet on your server. When they buy the book the Tags would be set (provided they did not have a Tag indicating the facet had been explored by them already)

I was thinking when the person found a location they would maybe 'DBL Click' a Location Stone there:
- The stone 'OnDoubleClick' would check them to see if they still had a Tag for that location
- If they have the Tag it would be removed and maybe they would get a small reward. Otherwise they get a message saying "you have already been here". When they find all locations then all Tags would be removed and a new Tag added indicating 'Trammel Completed' etc.
- When the book is 'DBL Clicked' the resulting Gump itself on opening would check for any Tags and display the appropriate art depending on which locations had been found.

I was hoping you would only need one gump which would handle this (not multiple gumps). I have not tried making a gump that would do this but it should be possible.
 
Last edited:
Back