Sie sind nicht angemeldet.

manfried

Ausguck

  • »manfried« ist der Autor dieses Themas

Beiträge: 71

Registrierungsdatum: 1. April 2004

  • Nachricht senden

1

Montag, 17. Mai 2004, 15:31

Why does that script doesn't work?

Hi, i'm in a very bad situation with one scénario i just created: his fifth objectives is to build 50.000 aristocrats, but when it's finaly done, nothing happened!
here is the script:

IF MISSION_QUATRE == TRUE && MISSION_CINQ == FALSE &&
PLAYER "HUMAN" INHABITANTCOUNT "ADEL" > 49999 THEN
{
MISSION_CINQ = TRUE;
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300014", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300015", TRUE );
SHOWTEXT("Singleplayer60_05.htm");
PLAYVIDEO( "SINGLE_60_END.BIK" );
WON( "HUMAN" );
}

I opened my savegame with the map editor and i can see that MISSION_QUATRE = TRUE in the [Signals] area, so the problem should be the following line:
IF MISSION_QUATRE == TRUE && MISSION_CINQ == FALSE &&
PLAYER "HUMAN" INHABITANTCOUNT "ADEL" > 49999 THEN
But i don't see what's wrong with it. I used the same script for 9999 aristocrats just before and it worked, so i don't understand, please, help me, i really think it will a great scenario, but it would be better with a real end

drkohler

Master of Editor

Beiträge: 1 578

Registrierungsdatum: 18. Juni 2003

  • Nachricht senden

2

Montag, 17. Mai 2004, 15:46

RE: Why does that script doesn't work?

Zitat

Original von manfried
Hi, i'm in a very bad situation with one scénario i just created:
I opened my savegame with the map editor and i can see that MISSION_QUATRE = TRUE in the [Signals] area,

I hope you did not forget the SET MISSION_QUATRE = TRUE or FALSE in the [SCRIPT_KERNEL] area..

manfried

Ausguck

  • »manfried« ist der Autor dieses Themas

Beiträge: 71

Registrierungsdatum: 1. April 2004

  • Nachricht senden

3

Montag, 17. Mai 2004, 15:53

No, i didn't forget that

manfried

Ausguck

  • »manfried« ist der Autor dieses Themas

Beiträge: 71

Registrierungsdatum: 1. April 2004

  • Nachricht senden

4

Montag, 17. Mai 2004, 15:55

Here is the complete [script Area] :

INITBLOCK()
{
PLAYVIDEO( "SINGLE_60.BIK" );
$ QUESTLOG INITIALISIEREN
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300010", TRUE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300011", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300012", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300013", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300014", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300015", FALSE );
}
SET MISSION_UN = FALSE;
SET MISSION_DEUX = FALSE;
SET MISSION_TROIS = FALSE;
SET MISSION_QUATRE = FALSE;
SET MISSION_CINQ = FALSE;
IF MISSION_UN == FALSE &&
PLAYER "HUMAN" INHABITANTCOUNT "KAUFLEUTE" > 2499 THEN
{
MISSION_UN = TRUE;
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300010", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300011", TRUE );
SHOWTEXT("Singleplayer60_01.htm");
SET_DIPLOMACY( "CG1", "HUMAN", -128 );
SET_DIPLOMACY( "CG05", "HUMAN", -128 );
SET_DIPLOMACY( "CG06", "HUMAN", -128 );
}
IF MISSION_UN == TRUE && MISSION_DEUX == FALSE &&
(PLAYER "CG1" DEAD && PLAYER "CG05" DEAD && PLAYER "CG06" DEAD) THEN
{
MISSION_DEUX = TRUE;
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300011", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300012", TRUE );
SHOWTEXT("Singleplayer60_02.htm");
}
IF MISSION_DEUX == TRUE && MISSION_TROIS == FALSE &&
PLAYER "HUMAN" INHABITANTCOUNT "ADEL" > 9999 THEN
{
MISSION_TROIS = TRUE;
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300012", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300013", TRUE );
SHOWTEXT("Singleplayer60_03.htm");
}
IF MISSION_TROIS == TRUE && MISSION_QUATRE == FALSE &&
(PLAYER "CG2" DEAD && PLAYER "CG3" DEAD && PLAYER "CG04" DEAD && PLAYER "CG07" DEAD) THEN
{
MISSION_QUATRE = TRUE;
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300013", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300014", TRUE );
SHOWTEXT("Singleplayer60_04.htm");
SET_DIPLOMACY( "CG2", "HUMAN", -128 );
SET_DIPLOMACY( "CG3", "HUMAN", -128 );
SET_DIPLOMACY( "CG04", "HUMAN", -128 );
SET_DIPLOMACY( "CG07", "HUMAN", -128 );
}
IF MISSION_QUATRE == TRUE && MISSION_CINQ == FALSE &&
PLAYER "HUMAN" INHABITANTCOUNT "ADEL" > 49999 THEN
{
MISSION_CINQ = TRUE;
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300014", FALSE );
QUESTLOG_SHOW( "HUMAN", "SINGLE01_300015", TRUE );
SHOWTEXT("Singleplayer60_05.htm");
PLAYVIDEO( "SINGLE_60_END.BIK" );
WON( "HUMAN" );
}
IF MISSION_TROIS == FALSE &&
PLAYER "HUMAN" WAR_STATUS "CG2" ||
PLAYER "HUMAN" WAR_STATUS "CG3" ||
PLAYER "HUMAN" WAR_STATUS "CG04" ||
PLAYER "HUMAN" WAR_STATUS "CG07") THEN
{
SHOWTEXT("Singleplayer60_lost.htm");
LOST( "HUMAN" );
}
IF MISSION_UN == FALSE &&
(PLAYER "HUMAN" WAR_STATUS "CG1" ||
PLAYER "HUMAN" WAR_STATUS "CG2" ||
PLAYER "HUMAN" WAR_STATUS "CG3" ||
PLAYER "HUMAN" WAR_STATUS "CG04" ||
PLAYER "HUMAN" WAR_STATUS "CG05" ||
PLAYER "HUMAN" WAR_STATUS "CG06" ||
PLAYER "HUMAN" WAR_STATUS "CG07") THEN
{
SHOWTEXT("Singleplayer60_lost.htm");
LOST( "HUMAN" );
}

drkohler

Master of Editor

Beiträge: 1 578

Registrierungsdatum: 18. Juni 2003

  • Nachricht senden

5

Montag, 17. Mai 2004, 16:03

RE: Why does that script doesn't work?

Zitat

Original von manfried
Hi, i'm in a very bad situation with one scénario i just created: his fifth objectives is to build 50.000 aristocrats, but when it's finaly done, nothing happened!
here is the script:
...
But i don't see what's wrong with it. I used the same script for 9999 aristocrats just before and it worked, so i don't understand, please, help me, i really think it will a great scenario, but it would be better with a real end
Hmm. the script seems ok. Do you say that it works with 9999 aristocrats? I don't know if numbers > maxshort ("C" = 32767) cause problems, there are a lot of problems in 1503 in various structures with numbers that surpass 32767...

manfried

Ausguck

  • »manfried« ist der Autor dieses Themas

Beiträge: 71

Registrierungsdatum: 1. April 2004

  • Nachricht senden

6

Montag, 17. Mai 2004, 16:12

Of course, it's possible, but the scenario "Metropol" works with INHABITANT_AMOUT > 99999, so it's strange that it's not enable with INHABITANTCOUNT. But well, i will try it to see, i you got any else idea please tell me, because if won't build as many people many times to check where the problem is :hey: