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 - Bernie

#441
I had this idea for the animation editor... it would be great if it was possible to specify a range of frames as a 'main loop'.

The frames before the main loop would only play through once, then it'll loop the main loop until the character has, for example, stopped talking. Then it would play the frames after the main loop.

This would really help for making animations smoother, like, say, an overexaggerated talking animation where the character rises his hands into the air, and moves them back after finishing talking. It also would look great on walking animations.

So... what do you guys think? Would anyone else find this useful?
#442
I'm not sure, but did you try this yet?

string name;
GetInvName(GetInvAt(mouse.x,mouse.y),name);

Works fine for me, at least. :)
#443
Great, thanks! :D
#444
Yep, that's how it is. Even with IsInterfaceEnabled it seems to let one loop through when the text options appear and when they disappear.

I managed to fix it with the code in my first post and setting that global value to 5 just before calling rundialog() within a room, and also locking keypresses with it, so hooray for me! :)
#445
Proskrito - Thanks. Problem is, it also happens while the dialog is running, even after I've already selected a few options. A RunDialog() from a room seems to behave differently than one called through, say, a character interaction. Even keypresses slip through sometimes.

SilverWizard_OTF - Thanks, but I think you're misunderstanding my problem. :)
#446
I've posted something like this before, but this time I can't fix the problem with the solution given in the last thread.

Anyway, the problem: When I call a RunDialog() from my room script, repeatedly execute seems to sort of still run for a loop or two while the dialog is running - a label is updated just before the window appears, and sometimes just after selecting an option. However, it doesn't do that when I call RunDialog() through, for example, a character interaction.

I tried to lock it with 'if (IsInterfaceEnabled()==1) {*setting label text*}, so it wouldn't update while the dialog is running, but it didn't work either.

And so, I did the following:

if (IsInterfaceEnabled()==0) if (GetGlobalInt(14)<10) {{SetGlobalInt(14,10);}}

if (GetGlobalInt(14)>0) {SetGlobalInt(14,GetGlobalInt(14)-1);}

if (GetGlobalInt(14)==0) {*setting label text*}

(not the most efficient kind of code, but the logic works for me, heh.)

This seems to work for most of the time, but sometimes, it still updates the label. Any ideas?

Thanks~
#447
QuoteGlad you found the solution.
So am I, thank you! :)

QuoteA good way to make sure that your scripting is not looping at all times is by hitting the `~ key (next to '1' on american keyboards) during debug mode to see the debug console.

Yeah, the debug console sure is useful, using it all the time.
Hmm... wonder if repeatedly setting one or more global integers in rep. ex. would make my game any slower?

By the way, there's a small problem with followcharacter(ex) and a low game.following_room_timer value ( 8 ). The character sometimes follows almost instantly, and sometimes it takes really long to pop up.

How's the follow_room_timer set up? Does it count the number of loops after a new room has been entered? Is there anything that can be done to make it more stable?

EDIT: Another thing... I can't run SetPlayerCharacter in repeatedly_execute_always, it exits with an error (says I can't run it in rep. ex. always). Is that intentional?

Thanks~
#448
Sounds logical, but my problem was a different one... I had this line in repeatedly execute:

if (getglobalint(1)==1) {setplayercharacter(EGO);}

Now, while gloabal int 1 was 1, the area interaction 'walks onto region' was ignored for character EGO all the time.

Anyway, I made sure setplayercharacter would only run once by putting in a setglobalint(1,0) after setplayercharacter. It's not a command that should be run all the time, I suppose. My not so proper use of code is to blame, I'd say.
#449
Oh, wait - it's not FollowCharacter, it's SetplayerCharacter (which I had both called in the same line, should have checked both commands alone before posting).

So, when you place SetPlayerCharacter(EGO) in repeatedly execute or call it just at the wrong moment, 'walking onto region' will be ignored, which kind of makes sense, too (since region interactions depend on the player character).

This makes it even less worthy of a mention, heh. Sorry for the trouble. :)
#450
QuoteSounds reasonable to me, I'll add it to my list.

Aye, thanks a bunch!

By the way, there's a small quirk with followcharacter(ex) and region interactions. It seems that region interactions don't work when you're calling a followcharacter(ex) from somewhere.

However, it only doesn't work when the command is executed at the same time as your character moves onto a region, but not while it's running. For example, if you do a followcharacter from repeatedly execute, 'character walks onto region' doesn't work at all.

Well, in any case - keep up the great work, I appreciate your efforts very much! :D
#451
Here's another way to check if a save game exists:

If you retrieve the save slot description of a nonexistant game, the text retrieved will be invalid slot 1, invalid slot 2 and so on.

You could run a check if the save slot description contains "invalid slot" and then set the label text to "empty".

Kinda like this:

string save1;
GetSaveSlotDescription(1,save1);
if (StrContains(save1, "invalid slot")>-1) {StrCopy(save1, "Empty 1");}
SetLabelText(SAVEGUI,0,save1);

GetSaveSlotDescription(2,save1);
if (StrContains(save1, "invalid slot")>-1) {StrCopy(save1, "Empty 2");}
SetLabelText(SAVEGUI,1,save1);

...and so on.
#452
Hmm... well, if you have a person without a talking view talk using the sierra mode, the window will not be displayed. If you let a character not in the current room talk, the text will be centered. This should work from everywhere, dialog script etc... will this help?
#453
Okay... put a 'return' after the last line under startup, otherwise it won't go to the dialog option selection in your game.
Also make sure to have the 'show' checkbox on the first option on.

By the way, if you have less than two dialog options, the game will not show the dialog selection, but it will automatically trigger it.

Hmm... can't think of anything else.
#454
Hmm, not sure... can you post the new code? Just copying and pasting the code here will do, you don't need to make images.
#455
Oops, didn't notice this before - don't use actual code there, do it like you did it below, Name: Blabla and so on. Normal code doesn't work in the dialog editor in general.
#456
Ah.. well, almost! :D
Those 3 lines need to be UNDER the startup entry point, not above.
#457
It's possible to rip samples out of snes roms using Snessor. You can get it from http://www.zophar.net/utilities/rippers.html
You can extract samples from snes roms with this - not only music samples, but also other sound effects, which then can be used in mod editors or in games. Not sure if this is legal, though.

Some other useful links:

http://www.zophar.net/utilities/soundfont.html
(snes soundfonts, can be used in some mod editors, for example modplug.)

http://www.zophar.net/music.html
(snes game music collections and more in their native formats, you'll need plugins for winamp to play them, or a seperate player, they can be found at http://www.zophar.net)
#458
See the part saying startup point? If you place a 'return' there, it'll go straight to the dialog selection when you talk to the other character. You can also put some dialog above that return under the startup entry point, like the 2 sentences you wanted.
Also, make sure you enable the dialog options you want to be available at the beginning in the editor (Column 'Show').
#459
Beginners' Technical Questions / Re: character
Wed 21/07/2004 23:18:08
I'm not sure what the problem is... do you mean transfering a character from a game to a different one? To do this, click the export button at the bottom of the 'characters' screen. Then start up the other game and click 'import character'. To make a character the player character, just check the 'this is the player character' checkbox, it's just under the view selection buttons.
#460
I hope it's okay to put suggestions here...

Would it be possible to add 'thinking' to the dialog script? With the bubble gui and the thinking view and all, like DisplayThought? It seems this command is still fairly new, but I've found it to be quite useful. It would be great if it could be called from within the dialog script without dialog requests.

Thanks~
SMF spam blocked by CleanTalk