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

#121
In your 'Pause' code, shouldn't "function key_down;" be int or bool instead of function?
#122
That looks correct... I'll try it when I go home. I wonder if it will pause voices in mid sentence?

Quotethe player will still walk to the walk-to pint first.

Who can blame him? If there were pints of beer near me, I'd walk to them too. :)

What about the line in on_mouse_click  Ashen mentioned?
#123
Thanks for the answers guys.

Quote from: Ashen on Fri 22/06/2007 00:15:42
'Any click' interactions aren't triggered by eModeWalkto, AFAIK, unless you've checked the 'Don't automatically move character' option.

My thought exactly... I had tried it.
So if I understand correctly, there is absolutely no way of preventing the character from moving to a hotspot that has a walk-to point?

QuoteThat means you'll have to add a line to on_mouse_click to handle eModeWalkto, but coupled with not using Walk-to points for exit hotspots it's still probably the easiest way.

And what would that line be?  ???

Khris, doesn't your 2nd code need FaceLocation parameters as well? And what is the ProcessClick(...) function about?

Do you by any chance have anything to suggest regarding my second question in the 1st post?
#124
My 'Exit' system works this way:

Say there's an open door in the room. I draw a region around the door to make sure that the Walk cursor will change to an Exit icon, and a hotspot around the same area. I then add a walk-to point to the hotspot to make sure that my character will always walk to the hotspot (and the region) and exit the room when you click on the hotspot.

My problem is that I don't want my character to walk to the hotspot when you click on it with a different cursor (use, talk or inventory). No matter how I try to adjust the code, adding player.StopMoving() or other functions I can think of the player always moves to hotspots that have a walk-to point when you click on them. How can I stop this from happening?

My second question is, is there any way to pause a dialog by pressing a key?
#125
It took me a while to figure it out and get it right but it worked flawlessly! Thank you so much, Khris.
#126
Here's the problem: My game features a "Thoughts" GUI, which is basically a Panel of buttons displayed as post-its. When the player uses the GUI, he can select a "Thought" with the Use icon, which causes a special post-it inventory item to turn the same color and a global variable named "thought" to change value.

As turning the GUI on and off repeatedly can become tedious after a while, I thought of using the mouse wheel to cycle through "thoughts" when the player's active inventory item is the post-it. This was simple to enough to achieve with the following script inside on_mouse_click:

Code: ags
  else if (button==eMouseWheelSouth) {
     if ((player.activeinv==1) && (mouse.Mode==4)) {    
        if (th==1) {
           if (Thou1.Visible==true) {
              thought="yourself";
              SetInvItemPic(1,145);
              }
           }
        else if (th==2) {
           if (Thou2.Visible==true) {
              thought="DITR";
              SetInvItemPic(1, 270);
              }
           }
        else if (th==3) {
           if (Thou3.Visible==true) {
              thought="Mr. Hungerton";
              SetInvItemPic(1, 145);
              }
           }   
           .
           .
           .
           .}


As you can see, GUI buttons Thou1, Thou2 etc. are not always visible, and I need to check whether each one of them is every time. The obvious problem is that if, for instance, Thou1 and Thou4 are visible and Thou2 and Thou3 aren't, there is a delay of two mouse wheel clicks before Thou4 is selected.

I've tried several workarounds, such as checking whether the next button is visible, and then the next, and then the next, until I got something like that:

Code: ags
        else if (th==5) {
           if (Thou6.Visible==true) {
              thought="Sydelle";
              SetInvItemPic(1, 145);
              }
           else if ((Thou6.Visible==false) && (Thou7.Visible==true)) {
              thought="Nadine";
              SetInvItemPic(1, 145);
              }
           else if ((Thou6.Visible==false) && (Thou7.Visible==false) && (Thou8.Visible==true)) { 
              thought="Henry";
              SetInvItemPic(1, 145);
              }
           else if ((Thou6.Visible==false) && (Thou7.Visible==false) && (Thou8.Visible==false) && (Thou10.Visible==true)) {  
              thought="Curtis' favor";
              SetInvItemPic(1, 312);
              }
           else th=0;
           }


but soon enough the different scenarios become too many and the code too messy.

Can anyone think of a more simple solution to avoid dead clicks?
#127
Dear friends,

Two samples of the game's music are now available in the web page of Atropos Studios.

Visit this page to listen to them. Your feedback will be appreciated.

I would also like you to know that the official demo of the game will be available on July 1st.
#128
Quote from: Nikolas on Wed 30/05/2007 14:37:10
Of course, nobody should support anyone for the meer reason that it's AGS (although in the case of Dave, it appears that it's...Dave, so it's ok), but I would expect an insider to be actually more at ease at any potential problems or faults in a game from AGS compaired to a "real commercial".

Or to put it differently, nobody should support a game for the mere reason that it's AGS, and nobody should boycott a game for the mere reason that it's AGS!

On another note Nikolas, I'm amused to see that your English spelling is as bad as your Greek one.  ;D
#129
OK, I feel a little bit better now.
Regarding the reputation of AGS, I'm fully aware of the danger and I regard the whole project with a sense of responsibility.
#130
Quote from: Andail on Tue 29/05/2007 17:56:23
Interestingly, the fact that "outsiders" buy commercial AGS games to a higher degree than AGS-ers is pretty understandable.
AGS-members live in a huge symbiosis where everybody helps eachother, and where one specific creator's training ground is made up by the collection of material he's taken part of (for free); all the art, music, games, tutorials, etc.

Since I don't charge for my work in the critic's lounge (where I've provided feedback ever since the board was created - a progress I was involved in, if I'm not mistaken) I'm not going to pay people money just to support their careers as game-creators.

I suddenly feel extremely guilty...  :(

In my defense, I did create a free game for everyone to play so I'm not a complete leech. I also offered CJ payment for the privilege of using AGS, but he politely refused to accept it. I honestly wish I could afford (in terms of time and money, which sometimes is one and the same) to keep creating free games, but I can't. I saw the opportunity to do something I'm good at and enjoy a lot for a living, and I honestly believe I have what it takes to make it happen. I realize I'm sort of taking advantage of other people's hard work, I'm grateful to all of you and I don't blame you if you look down on me.

My wish is to create a great game that will become known to the wider public, hopefully something you'll all be proud to say "it was made with AGS". In fact, I wish more people tried to create commercial games; some of you have much more talent than the average commercial gamemaker. I want Chrille Blomqvist to do Monkey Island 5, Gabriel Knight 4 and Indiana Jones 5 next year.

Naturally, I don't expect any AGSers to buy Diamonds in the Rough unless they're 100% sure it's worth the money.
#131
QuoteCan games made with AGS be sold?

I certainly hope so.
#132
This may sound like a cheap marketing trick, but I'm already working on my ideal adventure game. I've always wanted to see a real 'adult' adventure game, and by 'adult' I don't mean sexual scenes, I mean a serious game story dares to raise issues that haven't been discussed before in AGs. I never came across one, so I decided to make it myself and I'm very satisfied with the way it's developing.
#133
I wish it were that simple... I'm positive that I haven't declared 'thought' anywhere else. I've been using it for ages in GUIs and character interactions, today was the first time I tried it in a room script. I checked the room script and of course it's not there, just the code I wrote in my first post.

I'm wondering if Game.GlobalStrings[] might help... but that would mean changing a large part of my script, so I'd really appreciate an alternative.

EDIT:

OK guys I think I got it to work! In a very weird way....
I switched to my original code, and I put:

In the Script Header:
Code: ags
String thought;


In the Global Script:
Code: ags
function game_start() {
  // called when the game starts, before the first room is loaded
thought="yourself";


Then in function repeatedly_execute_always(), I put:

Code: ags
Game.GlobalStrings[1]=thought;


And finally, in the room script I put:

Code: ags
if (StrCaseComp("Curtis' favor", Game.GlobalStrings[1])==0) {


And it worked! Everything seems to be in order, but I have to test it some more to be sure. Can anyone think of a reason why this weird solution might fail somewhere?
#134
I'm not sure what you mean, this is what my script header looks like now:

Code: ags
// Main header script - this will be included into every script in
// the game (local and global). Do not place functions here; rather,
// place import definitions and #define names here to be used by all
// scripts.
import String thought;
import function GetScale();
#135
So according to KhrisMUC in the thread you mention, I am supposed to put:

Code: ags
String thought;
export thought;


at the top of the global script

and then:

Code: ags
import String thought;


into the script header.

However, the above returns the following error message:

Local variable cannot have the same name as an import
#136
String thought is declared in the Script Header, and I've used it in various parts of the game with no problems.

In the Script Header:
Code: ags
String thought;


In the Global Script:
Code: ags
function game_start() {
  // called when the game starts, before the first room is loaded
thought="yourself";


Come to think of it, I've never used it in a room script before. Does this mean I can't? Is there no way around this?
#137
A certain action makes my game crash for no apparent (to me) reason. Here is my code:

Code: ags
  // script for Hotspot 2 (bookcase): Use inventory on hotspot
if (player.activeinv==1) {
   if (StrCaseComp("Curtis' favor", thought)==0) {
      player.Walk(122, 280, eBlock);
      player.FaceLocation(122, 100, eBlock);
      Wait(20);
      player.Walk(171, 280, eBlock);
      player.FaceLocation(171, 100, eBlock);
      Wait(20);
      player.Walk(255, 280, eBlock);
      player.FaceLocation(255, 100, eBlock);
      Wait(20);
      Display("You spot a book titled 'Chants of Experience', by William Flake. That looks like something Curtis would enjoy.");
      Display("You take it with you.");
      AddInventory(17);
      GiveScore(6);
      Thou10.Visible=false;
      }
   else Display("That provides no further insight.");
   }
else if (player.activeinv==16) Display("That's not the way to return a book.");
else Display("You can't use that here."); 


Using inventory item 1 on that hotspot returns the following message, regardless of whether the StrCaseComp is 0 or 1:
Quote
An internal error has occured. Please note down the following information.
If the problem persists, contact Chris Jones.
(ACI version 2.71.894NMP)

Error: run_text_script1: error -6 running function 'hotspot2_c':
Error: Null string referenced
in Room 66 script (line 50)

Line 50 of the room script is the following:

Code: ags
if (StrCaseComp("Curtis' favor", thought)==0) {


I don't understand why it doesn't work, as the exact same line works perfectly in other places.

Any help will be appreciated.
#138
One more interview for anyone who wants to read a bit more guys, it's in the Mystery Manor forum.

The interview features two new, exclusive screenshots, and the site is offering two free copies of DITR to their members.

EDIT To accolyte:

I can help you with that typing quiz if you're still interested, send me a PM.
#139
You can come to me for advice anytime! Although many members know a lot more about AGS than I do, I can give you my opinion on pretty much everything else (story, characters, puzzles etc.). Not that I am the ultimate expert in those, of course.
#140
Hello all. I would like to bring to your attention that our web page has been updated.

Additions (regarding our upcoming game Diamonds in the Rough):

-New screenshots
-Two new characters: Sydelle Williams and Nadine Conner
-Voice samples of the four characters that are featured in the site

Any comments would be welcome.

Updated Progress Report:

- graphics 90%
- puzzles 40%
- story 90%
- music/sound 30%
SMF spam blocked by CleanTalk