Mission-Counter-Script (EM4)

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Beispiel-Script zur Nutzung des Mission Counter in EMERGENCY 4.

    Table Of Contents

    Mission-Counter-Script

    Dieses Script dient als Beispiel zur Anwendung der Counter in Missionen, mit denen bestimmte Parameter abgefragt werden können, damit ein vordefiniertes Ereignis eintritt. So lassen sich beispielsweise Missionen als gewonnen oder verloren deklarieren.

    In diesem Beispiel-Script müssen alle Verletzten abtransportiert und alle Brände gelöscht werden, damit die Mission als gewonnen gesetzt wird.

    Source Code

    1. // Dieses Script darf frei verwendet werden wenn dieser Kommentar enthalten bleibt.
    2. // Missionsscript by rusticus und Bass-ti
    3. // Idea by HH-EM4
    4. const char OBJECTIVE_A[] = "Löschen Sie alle Brände!";
    5. const char OBJECTIVE_B[] = "Bringen Sie alle verletzten und toten Personen ins Krankenhaus";
    6. object Mission01 : MissionScript
    7. {
    8. Mission01()
    9. {}
    10. ~Mission01()
    11. {}
    12. void Start()
    13. {
    14. Mission::AddObjective(OBJECTIVE_A);
    15. Mission::SetObjectiveAccomplished(OBJECTIVE_A, false);
    16. Mission::AddObjective(OBJECTIVE_B);
    17. Mission::SetObjectiveAccomplished(OBJECTIVE_B, false);
    18. }
    19. MissionState GetMissionState()
    20. {
    21. if (Mission::GetCounter("Burning Objects") + Mission::GetCounter("Burning Houses") == 0)
    22. {
    23. if (!Mission::IsObjectiveAccomplished(OBJECTIVE_A))
    24. {
    25. Mission::SetObjectiveAccomplished(OBJECTIVE_A, true);
    26. } else
    27. {
    28. Mission::SetObjectiveAccomplished(OBJECTIVE_A, false);
    29. }
    30. }
    31. if (Mission::GetCounter("Injured Persons") + Mission::GetCounter("Dead Persons") == 0)
    32. {
    33. if (!Mission::IsObjectiveAccomplished(OBJECTIVE_B))
    34. {
    35. Mission::SetObjectiveAccomplished(OBJECTIVE_B, true);
    36. } else
    37. {
    38. Mission::SetObjectiveAccomplished(OBJECTIVE_B, false);
    39. }
    40. if (Mission::IsObjectiveAccomplished(OBJECTIVE_A) && Mission::IsObjectiveAccomplished(OBJECTIVE_B))
    41. return MISSION_SUCCEEDED;
    42. return MISSION_RUNNING;
    43. }
    44. };
    Display All

    1,430 times viewed