Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - abstauber

#241
Sure, but why the exception for the attribute extenders. I just found out that either of these work.
Code: ags

bool seti_DialogGuiOptions(static CustomDialogGui, eDialogGuiOptions index,  int value) {
}

// works too on a static struct, but it should not
bool seti_DialogGuiOptions(this CustomDialogGui*, eDialogGuiOptions index,  int value){
}
#242
After learning about attributes, I am currently implementing them to my modules. Now I have also learned that static extenders are possible since 3.4.

I have a static struct like this, along with its extenders:
Code: ags

struct CustomDialogGui {
  import static void init();
  import static attribute int DialogGuiOptions[];
};
import void prepare(static CustomDialogGui, DialogOptionsRenderingInfo *info);
import void addOption(static CustomDialogGui, int position, int optionNumber, String optionText);
import void getOptionDetails(static CustomDialogGui, DialogOptionsRenderingInfo *info);
import void getRowCount(static CustomDialogGui, int width);


An extender function head looks like this in the .asc file, as it was explained here http://www.adventuregamestudio.co.uk/manual/ags38.htm
Code: ags

void prepare(static CustomDialogGui, DialogOptionsRenderingInfo *info)

Now here's the thing I don't understand.

The attribute extender has to be like declared like a non-static extender. And it even works (wtf)
Code: ags

bool seti_DialogGuiOptions(this CustomDialogGui*, eDialogGuiOptions index,  int value)


So yes, it all works but I don't get why attribute extenders have to be non-static on static structs.
#243
Here's a list of tools I can highly recommend - nothing new or groundbreaking, but all very solid pieces of software.

Pixelart / Animation
GraphicsGale
https://graphicsgale.com/us/
free

Aseprite
https://www.aseprite.org/
14,99 eur or compile yourself

ProMotion
https://www.cosmigo.com/
39,99 eur

Grafx2
https://pulkomandy.tk/projects/GrafX2
free


Raster
Gimp
https://www.gimp.org/
free

paint.net
https://www.getpaint.net/
free

Vector
Inkscape
https://inkscape.org/
free
#244
Many thanks! I've refactored the Tumbleweed template to use attributes now. But I won't do it with this template as I'd really like users to switch to the newer template and this one has not been refactored at all.

Maybe it would have been smarter to call the Tumbleweed Template "9-verb MI-Style 2.0" :-\
#245
Quote from: Snarky on Tue 31/07/2018 10:02:02
Sorry if this seems patronizing, you probably knew most of it already, but I wasn't sure exactly what part of it had you confused.
Not at all, this was quite insightful. Although I have to admit that in the end the wiki article did the trick of me fully understanding what attributes do in AGS :)

But since the wiki article mentions it: will this scripting feature still be supported in the future? I sure hope so ;)
#246
@Monsieur OUXX:
First of all, I really appreciate that you share your hard work with us/me and it's quite educational how you did things.
That said, I do not understand why you haven't refactored the fully fledged dialog module instead (http://www.adventuregamestudio.co.uk/forums/index.php?topic=36313.0) :confused:
If I accept your pull request now I'm in the delicate position that I have to apply all your changes to the parent module at some point.

Btw. because of this problem I usually do not integrate 3rd party modules in my templates. For the dialog GUI I made an exception because the default dialog in AGS is very very basic.
Also if I accept the pull request, it would make sense to apply these changes to the GUI script itself. This would as well be a major task and the new settings array doesn't help code-readability either.

Another thing is the refactored module still has around 13 options left which are not covered by the settings array - correct me if I'm wrong.
Edit: The function dropdown in the AGSEditor is also broken in your version of the customdialoggui.asc.

But enough of that... my main point is: if we change the way how variables are assigned, let's do it for the whole template.
I agree with Snarky: adding dozens of setters and getters (I know this from some if my modules too) blows up the code a lot. I like CW's approach, just with an enum instead of plain index numbers. But what difference makes " import attribute int " instead of a regular import?
#247
For some reason I thought that this would be the way to do it. But apparently you can doubleclick-walk to everything in Thimbleweed Park.
So yeah, it seems to be an intentional bug which I'll fix right away :)

In the meantime you can comment out the 'if condition' in line 2075 and it's bracket in 2085. In line 2095 remove this piece from the if condition: 
"&& location_type == eLocationNothing"

I'll test it some more and see if this fix breaks anything.
--edit: of course it broke something :P Gotta fix the door handling now.
#248
Just a quick guess, but have a look at 'General Settings' in the AGS Editor. In the category 'Visual', check the setting "When player interface is disabled, GUIs should" and make sure it's set to 'Display normally'.
That could be at least one cause of the icons disappearing.
#249
General Discussion / Re: AGS Image Host?
Mon 30/07/2018 13:24:57
Quote from: AGA on Sat 28/07/2018 15:20:42
Quote from: abstauber on Fri 27/07/2018 13:35:54
The only thing that would make sense in my eyes is to support direct image uploading in the forums. But that would cause even more traffic and generate costs for AGA and so on.

I can do that.  Bandwidth isn't really an issue.

It would make a lot more sense for images to be hosted here, where basically they'd stay until AGS is no longer a thing...


Please do (nod)
#250
Critics' Lounge / Re: Verbcoin Interface
Fri 27/07/2018 22:17:08
just as a side-note - the remastered DOTT version changed the 9 verb GUI to a dynamic verbcoin and I think it's quite playable. But it still doesn't "feel" like the best adventure game UI ever - yet for a verbcoin it is alright.
#251
Quote from: Monsieur OUXX on Fri 27/07/2018 14:03:24
Ultimately that allows to set up your game around the module without having to modify the module's code (that would not be a problem with other languages, but with AGS it's a nightmare to have to re-import and re-modify an imported third-party module every time it's modified by its creator)

Manually editing the CDG.init() function was the never the intended way of using the module. All variables inside the CDG struct are accessible from everywhere, so you can modify the dialog GUI from every script below the dialog script. So if you do the setup in game_start inside the globalscript (like you do now), you still will be fine, even if the module code changes.

To be honest, the best way of handling / designing custom dialogs would be inside the AGS Editor :P
#252
General Discussion / Re: AGS Image Host?
Fri 27/07/2018 13:35:54
2dadventure.com
shutupload
agser.me

...and probably a few more member hosted platforms came and went. The only thing that would make sense in my eyes is to support direct image uploading in the forums. But that would cause even more traffic and generate costs for AGA and so on.
#253
Yes, the repo is up to date, I just added the tag for 1.6.3 belatedly.
I am still pondering about your pull request though. I agree that it's not very elegant to define all the settings in one giant init function and your code clean up sure is nice. On the other hand it doesn't seem very user friendly or at least I'm a bit concerned that it's so complicated that it might put users off

So instead of this
Code: ags

    CDG.uparrow_img     = 124;
    CDG.uparrow_xpos    = 137;
    CDG.init();


you have to do that
Code: ags
  
  int spriteSettings[] = CustomDialogGui.GetDefaultSettings_Sprites();
  spriteSettings[eCustomDialog_uparrow_img] = 124; //custom sprite for up arrow
  spriteSettings[eCustomDialog_uparrow_hi_img] = 137; //custom sprite for highlighted up arrow
  CDG.ApplySettings_Sprites(spriteSettings); //apply the changes
  CDG.init();


And for every other settings group you need to create a new array. So what's the benefit apart from coding zen ;)
Anyone else has an opinion on this?

#254
Sorry for accusing AGS: I messed up :X.
I forgot to set info.HasAlphaChannel = true;

@imsomnia212
In line 382 (function dialog_options_get_dimensions) add this

Code: ags

  if ((CDG.bg_img_transparency > 0 || CDG.bg_img_transparency == -1) && CDG.bg_img!=0 ) {
    info.HasAlphaChannel = true;
  }
#255
@imsomnia212 I can replicate this, but I'm clueless why it isn't working anymore. Drawing images with an alpha channel used to work on dialog GUIs - at least in 2017. I'm trying to find out in which version of AGS, this feature broke again. It never broke, see below ;)

#256
Thanks for the feedback, although it seems like I'm a little late to jump on the bandwagon.
I admit the main inspiration came from my mobile phone - not to mention the inkscape tutorial. :)


And who knows, maybe even pixely Win 3.11 icons might see a comeback :)
#257
Me and Christina are of course interested as well. We had a great time hosting cat and her family! To be honest it almost felt like a tiny real mittens including "show and tell", geek talk and all the positive atmosphere.

@CaptainD: I just bought your game and once hopefully more people will do it you'll join us in no time :-D
But I actually bought it since cat highly recommended it to me.
#258
I honestly haven't worked with submodules yet, but from what I've read it seems like a good solution. Of course I'd have to start with using tags, releases and such :)
#259
I tried to give this a go as well.



Here's a quick test:


edit:
Tweaked the gradient       |       Made the cup take up more space of the square

 


one last edit with the classic CJ cup:


Source in Inkscape in case anyone likes to tinker with it.
http://shatten.sonores.de/wp-content/uploads/2018/06/ags_icon.zip
#260
Would it be possible to update the 9 verb template? The one shipped is a tad outdated. Also I would love to see the Tumbleweed template included as well.

http://shatten.sonores.de/wp-content/uploads/2018/06/9-verb-MI-style_163.zip
http://shatten.sonores.de/wp-content/uploads/2018/06/tumbleweed_1.0.zip
SMF spam blocked by CleanTalk