Go
New
Find
Notify
Tools
Reply
  
  Login/Join 
Posted
I have made a singleplayer map about Sandro and these three scripts fail to work if someone can help me getting this scripts to work I'll release the map today!

Script 1
function Inferno_1(PLAYER_8, PLAYER_3, heroname, townname)
MessageBox("Maps/SingleMissions/The Return Of Sandro/Capt_INF.txt");
SetObjectiveState("KillAgrael", "OBJECTIVE_ACTIVE", "playerID = PLAYER_3");
Trigger(OBJECT_CAPTURE_TRIGGER, "Inf_1", nil);
end;

Trigger(OBJECT_CAPTURE_TRIGGER, "Inf_1", "Inferno_1");

and this:
function KillCyrus(Tan)
LevelUpHero("Aberrar");
MessageBox("Maps/SingleMissions/The Return Of Sandro/Death.txt")
Trigger(PLAYER_REMOVE_HERO_TRIGGER, "PLAYER_5", nil);
end;

Trigger(PLAYER_REMOVE_HERO_TRIGGER, "PLAYER_5", "KillCyrus");

Another example:
function KillAgrael(Agrael)
LevelUpHero("Aberrar");
MessageBox("Maps/SingleMissions/The Return Of Sandro/Inferno.txt")
Trigger(PLAYER_REMOVE_HERO_TRIGGER, "PLAYER_8", nil);
end;

Trigger(PLAYER_REMOVE_HERO_TRIGGER, "PLAYER_8", "KillAgrael");
 
Posts: 4 | Registered: Thu November 16 2006Reply With QuoteEdit or Delete MessageReport This Post
Posted Hide Post
i hate to act like a noob and ask 1 question in multiple threads but how did get MessageBox("Maps/SingleMissions/The Return Of Sandro/Capt_INF.txt"); what i dont get is where do you write the message box?
 
Posts: 79 | Registered: Mon May 15 2006Reply With QuoteEdit or Delete MessageReport This Post
Posted Hide Post
quote:
SetObjectiveState("KillAgrael", "OBJECTIVE_ACTIVE", "playerID = PLAYER_3");


ok, is this a single player mission?
is the human player number 3? if so, that is a problem right there. the human player in a single mission map MUST be player 1 or many scripts will not work. i had that problem.

also, is it a defeat hero objective you are trying to set with Agreal as the parameter?
if so, on the map im working on, i tried to have Agreal as a parameter in a defeat hero objective, and discovered what i can only think is a bug.
whenever i activated the quest to defeat Agreal, the very next hero that the player kills, will trigger the Agreal objective to complete.
so when i set the objective then killed some other hero before i killed agreal, the objective would complete.

quote:
"playerID = PLAYER_3");


im not sure about that part, since in a single mission map, you wouldnt need the command, since it defaults to player 1.

after you use this command
quote:
SetObjectiveState("KillAgrael", "OBJECTIVE_ACTIVE", "playerID = PLAYER_3");

you also need this to follow or the player will not see the objective in thier list, unless thats what you wanted -
SetObjectiveVisible ("KillAgrael", true);

quote:
MessageBox("Maps/SingleMissions/The Return Of Sandro/Death.txt")

you missed a ; at the end if thats how your script appears in the editor.

you have to be careful useing the player remove hero trigger, since you cannot select which hero, so as long as PLAYER5 and PLAYER8 have no other heroes to kill to accidently trigger the script, you should be ok.
other than that, maybe someone else can point out any errors, looks like they should work.
 
Posts: 266 | Registered: Sun April 23 2006Reply With QuoteEdit or Delete MessageReport This Post
Posted Hide Post
quote:
Trigger(PLAYER_REMOVE_HERO_TRIGGER, "PLAYER_8", nil);


ok found another thing,

(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_8, nil);

should be that, you dont need quotes, and the same for the the reference you made to player 5 and all player 8.
 
Posts: 266 | Registered: Sun April 23 2006Reply With QuoteEdit or Delete MessageReport This Post
Posted Hide Post
No need that the main player is Player 1
This is how the scripts for Agrael and Cyrus should be:
function KillAgrael(heroname, killername)
if heroname == "Agrael" and killername == "Aberrar" then
LevelUpHero("Aberrar");
TransformTown("Inf_1", TOWN_NECROMANCY);
TransformTown("Inf_2", TOWN_NECROMANCY);
MessageBox("Maps/SingleMissions/The Return Of Sandro/Inferno.txt")
Trigger(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_8, nil);
end;
end;
Trigger(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_8, "KillAgrael");
function KillCyrus(heroname, killername)
if heroname == "Tan" and killername == "Aberrar" then
LevelUpHero("Aberrar");
MessageBox("Maps/SingleMissions/The Return Of Sandro/Death.txt")
Trigger(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_5, nil);
end;
end;
Trigger(PLAYER_REMOVE_HERO_TRIGGER, PLAYER_5, "KillCyrus")

@finkellll
Click this button
Then you open the resources tab and add a new file: http://img218.imageshack.us/img218/8626/intrctns2gd9.jpg
Than you'll have to add a new file. There you can make your message.

BTW: Version 1.0 of my map is downloadable here.
 
Posts: 4 | Registered: Thu November 16 2006Reply With QuoteEdit or Delete MessageReport This Post
Posted Hide Post
How about:

function ConfusedDeej(bumbname,dumbername)
If bumbname =="Deej"and dumbername=="DeejMaster"then
DemoteToAmatuer("DeejMaster");
Disable Understand("Braindead", NO CEREBELLUM);
Disable Understand("Idiot", NO CEREBRAL CORTEX);
MessageBox("Maps/SingleMissions/Scripting/Whats Scripting.txt")
Trigger(JUST_SHOOT_ME_I'M_CONFUSED,NOT IN GAME,nuts);
end;
end;
Trigger(I'M_TOO_OLD_FOR_THIS,"DeejerOut")

I need a tutor...
 
Posts: 14 | Registered: Wed October 18 2006Reply With QuoteEdit or Delete MessageReport This Post
 Previous Topic | Next Topic powered by eve community  
 


Terms of Use