Facebook Twitter YouTube Frictional Games | Forum | Newsletter | Dev Blog | Dev Wiki | Support | Shelf | Store

Privacy Policy


Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Problem
Author Message
maitalr Offline
Junior Member

Posts: 16
Joined: May 2012
Reputation: 0
Post: #1
Problem
I just started to develop a game, and I'm trying to use scrip. I made a simple thing - open door.
The key's name: key_1. The door's name: Door_3
And it doesn't work! where is the mistake? :



////////////////////////////
// Run when entering map
void OnEnter()
{
AddUseItemCallback("", "key_1", "Door_3", "UsedKeyOnDoor", true);
void MyFunc(string &in asItem, string &in asEntity)
SetSwingDoorLocked(Door_3, false, true);
PlaySoundAtEntity("", "unlock_door", "Door_3", 0, "false");
RemoveItem(key1);
}

////////////////////////////
// Run when leaving map
void OnLeave()
{

}


THANK YOU!
05-08-2012 02:10 PM
Find all posts by this user Quote this message in a reply
Cranky Old Man Offline
Posting Freak

Posts: 925
Joined: Apr 2012
Reputation: 37
Post: #2
RE: Problem
(05-08-2012 02:10 PM)maitalr Wrote:  I just started to develop a game, and I'm trying to use scrip. I made a simple thing - open door.
The key's name: key_1. The door's name: Door_3
And it doesn't work! where is the mistake? :



////////////////////////////
// Run when entering map
void OnEnter()
{
AddUseItemCallback("", "key_1", "Door_3", "UsedKeyOnDoor", true);
void MyFunc(string &in asItem, string &in asEntity)
SetSwingDoorLocked(Door_3, false, true);
PlaySoundAtEntity("", "unlock_door", "Door_3", 0, "false");
RemoveItem(key1);
}

////////////////////////////
// Run when leaving map
void OnLeave()
{

}


THANK YOU!
What's this doing here?
void MyFunc(string &in asItem, string &in asEntity)

Also, put double-quotes around key1 on the last line.

Edit:
Of course, what you want is probably something like this:
////////////////////////////
// Run when entering map
void OnEnter()
{
AddUseItemCallback("", "key_1", "Door_3", "UsedKeyOnDoor", true);
}

void UsedKeyOnDoor(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("Door_3", false, true);
PlaySoundAtEntity("", "unlock_door", "Door_3", 0, "false");
RemoveItem("key1");
}

////////////////////////////
// Run when leaving map
void OnLeave()
{

}

Noob scripting tutorial: From Noob to Pro

(This post was last modified: 05-08-2012 02:18 PM by Cranky Old Man.)
05-08-2012 02:15 PM
Find all posts by this user Quote this message in a reply
darkadders Offline
Junior Member

Posts: 45
Joined: Mar 2012
Reputation: 3
Post: #3
RE: Problem
ill try fixing it for ya:


void OnStart()
{
AddUseItemCallback("", "key_1", "Door_3", "UsedKeyOnDoor", true);
}


void UsedKeyOnDoor(string &in asItem, string &in asEntity)
{
SetSwingDoorLocked("Door_3", false, true);
PlaySoundAtEntity("", "unlock_door.snt", "Door_3", 0, false);
RemoveItem("key_1");
}





WHAT I DID (along with some unrelated tutorial information on further development.)




I basically changed the script from void OnEnter to void OnStart.

Also, i added a function for your AddUseItemCallback. so when you use the item on the AddUseItemCallback, it will call the function of UsedKeyOnDoor, which: unlocks the door, plays the sound "unlock_door.snt" and removes the key item from your inventory

i also added some ""s here and there where theyre needed. true's and false's dont need "".

and i also changed some typos in your item names.



REMEMBER: you need to have a filetype for your sound which you want played.

the default filetypes of both sounds and music in amnesia is .ogg

a SOUND uses .snt files
MUSIC uses .ogg files

if you want a quick tutorial on filetypes, click the spoilerbutton below, if interested.

Spoiler below!

a .SNT file is a file which tells the script what sounds which are to be played.

example: lets say i have 6 sounds named "MYSOUND_1.ogg", "MYSOUND_2.ogg", "MYSOUND_3.ogg", "MYSOUND_4.ogg", "MYSOUND_5.ogg"
and "MYSOUND_6.ogg".

id probably want these sounds to play at random, to add some realism to the sounds (when you hit something, it doesnt make the same sound all the time, it maks a variety of sounds), so i make a .snt file for these sounds, named MYSOUND.snt

i open another .snt made already, and i copy its contents and paste it into mine. i customise the names of the sounds being played from "whatever_sounds_its_told_to_play_at_random" to "MYSOUND_1,2,3,4,5,6"

this will tell the game to play the MYSOUND sounds at random.

music doesnt need a .snt file to be played. to play music you just copy the script from the list on the wiki and type in the music name, with a .ogg filetype.


this script can be copied from my post if you wish. it should be functioning now.
Just remember what ive typed here, and i hope you'll learn from the things i have done and explained.


good luck on your story ^^

*insert creative signature here*
(This post was last modified: 05-08-2012 02:59 PM by darkadders.)
05-08-2012 02:32 PM
Find all posts by this user Quote this message in a reply
Traggey Online
The Doctor

Posts: 1,930
Joined: Feb 2012
Reputation: 109
Post: #4
RE: Problem
Wrong forum, I've moved this to the support section.

05-08-2012 03:07 PM
Find all posts by this user Quote this message in a reply
maitalr Offline
Junior Member

Posts: 16
Joined: May 2012
Reputation: 0
Post: #5
RE: Problem
It doesn't make any sense! Its not working! both ways! What i'm doing WRONG?
05-08-2012 03:16 PM
Find all posts by this user Quote this message in a reply
darkadders Offline
Junior Member

Posts: 45
Joined: Mar 2012
Reputation: 3
Post: #6
RE: Problem
(05-08-2012 03:16 PM)maitalr Wrote:  It doesn't make any sense! Its not working! both ways! What i'm doing WRONG?
tell me the error youre recieving when you run your map.

*insert creative signature here*
05-08-2012 03:19 PM
Find all posts by this user Quote this message in a reply
maitalr Offline
Junior Member

Posts: 16
Joined: May 2012
Reputation: 0
Post: #7
RE: Problem
Everything works well. But when I try to open the door with the key, it does not open
05-08-2012 03:31 PM
Find all posts by this user Quote this message in a reply
darkadders Offline
Junior Member

Posts: 45
Joined: Mar 2012
Reputation: 3
Post: #8
RE: Problem
(05-08-2012 03:31 PM)maitalr Wrote:  Everything works well. But when I try to open the door with the key, it does not open
so its still locked after you use the key on it?

*insert creative signature here*
05-08-2012 04:08 PM
Find all posts by this user Quote this message in a reply
Datguy5 Offline
Senior Member

Posts: 622
Joined: Dec 2011
Reputation: 12
Post: #9
RE: Problem
I dont think this affects much,but change this PlaySoundAtEntity("", "unlock_door.snt", "Door_3", 0, false); to
PlaySoundAtEntity("", "unlock_door", "Door_3", 0, false);
I just removed the snt from the end.Thats how its in my script and it works fine.Can you show us the whole script(if it has something else).

Also check the names in the level editor.

(05-08-2012 04:08 PM)DarkShadowz Wrote:  
(05-08-2012 03:31 PM)maitalr Wrote:  Everything works well. But when I try to open the door with the key, it does not open
so its still locked after you use the key on it?

I think he means that when he tries to use the key on the door,it says cannot use item this way.

(This post was last modified: 05-08-2012 04:29 PM by Datguy5.)
05-08-2012 04:26 PM
Find all posts by this user Quote this message in a reply
maitalr Offline
Junior Member

Posts: 16
Joined: May 2012
Reputation: 0
Post: #10
RE: Problem
(05-08-2012 04:08 PM)DarkShadowz Wrote:  
(05-08-2012 03:31 PM)maitalr Wrote:  Everything works well. But when I try to open the door with the key, it does not open
so its still locked after you use the key on it?
Yes. its still locked and it say "you cannot use this item that way//.."
(05-08-2012 04:26 PM)Datguy5 Wrote:  I dont think this affects much,but change this PlaySoundAtEntity("", "unlock_door.snt", "Door_3", 0, false); to
PlaySoundAtEntity("", "unlock_door", "Door_3", 0, false);
I just removed the snt from the end.Thats how its in my script and it works fine.Can you show us the whole script(if it has something else).

Also check the names in the level editor.

(05-08-2012 04:08 PM)DarkShadowz Wrote:  
(05-08-2012 03:31 PM)maitalr Wrote:  Everything works well. But when I try to open the door with the key, it does not open
so its still locked after you use the key on it?

I think he means that when he tries to use the key on the door,it says cannot use item this way.

Tried. it didn't work. and i checked the names again.
there isn't. that's the whole script.
I have no idea what i'm doing wrong
and you all probable have no idea what i want
05-08-2012 05:06 PM
Find all posts by this user Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)