Banner left   Banner center   Banner right

Germanenglish Home · News · Diary · Screenshots · Documentation (Wiki) · Downloads · Guestbook · Forum

Home · Benutzer registrieren · Suchen · Statistik · FAQ · Benutzerliste

Zur Zeit online: kein Gast, xanbank

 X-Force - Fight For Destiny - Forum —› Allgemein —› Auslsebedingungen fr Skripte

Autor Mitteilung
verfasst am: 14.06.2010, 12:02
Registrierdatum: 31.01.2010, 20:05

 Beitrge: 122
Bei den Auslsebedingungen fr Skripte kann man verschiedene Bedingungstypen mit jeweils einem Parameter eintragen.
Meine Frage: Sind die Auslsebedingungen UND- oder ODER-Verknpfungen?
Problem: durch die Erforschung eines beliebigen Alien-Offiziers sollen Forschungen freigegeben werden. Da ich nicht wei, welchen Offizier ich zuerst erforschen kann, brauche ich eine ODER-Verknpfung. Zum besseren Verstndnis einen kleinen Tabellenauszug aus den einmaligen Bedingungen fr Skripte
Bedingungstype.............Parameter
--------------------------------------------------------
Forschung beendet.......AlienA-Offizier
Forschung beendet.......AlienB-Offizier
Forschung beendet.......AlienC-Offizier

Ich hoffe es ist eine ODER-Verknpfung, denn die UND-Verknpfung hat man ja bei den Vorgngern fr Forschungsprojekte.
verfasst am: 14.06.2010, 15:21
Spielsatz Alliances

Registrierdatum: 14.07.2004, 14:47

 Beitrge: 1185
Das sind immer UND-Verknpfungen. Fr ODER-Verknpfungen musste du etwas im Stil des Techcenters im GalWar machen.
verfasst am: 14.06.2010, 19:04
Registrierdatum: 31.01.2010, 20:05

 Beitrge: 122
Danke fr die schnelle Antwort, Sujin.
Nun gut, dann probiere ich es mit einem Event (sience_api_CompleteProject) und schaue hier mit ODER nach, ob ein x-beliebiger Alien-Offizier erforscht wurde, denn ich habe keine Lust, fr eine popelige ODER-Verknpfung mehrere hundert Zeilen zu skripten oder die boolsche Algebra heran zu ziehen.

Hier eine Bitte an die Programmierer: Sie sollten bei den Bedingungen fr Skripte die Wahlmglichkeit fr UND bzw. ODER mit vorsehen, denn fr NICHT (Negation) ist ja ein Feld vorhanden.
verfasst am: 14.06.2010, 20:14 · Edited by: DirkF
Admin, Spielsatz GalWar

Registrierdatum: 31.08.2005, 21:51

 Beitrge: 5596
naja, eventuell kommt das - eventuell nicht.
Ob ein ODER umgesetzt wird hngt sehr stark davon ab, wie die neue Projektsteuerung aussehen wird, die von mir geplant und umgesetzt wird.

Es gibt aber eine ganz einfache Mglichkeit, auch jetzt schon eine solche ODER-Verknpfung umzusetzen:
Jeder der Aliens kriegt ein Skript, das bei der "Forschung fertig" nur auf dieses Alien reagiert und nur einen einzigen Befehl enthlt:

XSkriptReferenz.MissionapiClearTrigger

Ein Skript, das das gewnschte Forschungsprojekt aktiviert, erhlt dann einen Trigger als Bedingung, und wird aktivier sobald das erste der Alien-Trigger-Skripten abluft, d.h. mit dem ersten erforschten Alien-Offizier...
verfasst am: 14.06.2010, 21:29
Registrierdatum: 31.01.2010, 20:05

 Beitrge: 122
Ich bin eben mit dem Scripten der ODER-Verknpfungen fertig geworden und habe noch nichts getestet, daher meine Frage: Was heit das: naja, eventuell kommt das - eventuell nicht? So sieht der verkrzte Programmcode aus, was soll hier vielleicht nicht kommen?
program Einleitung;

uses Unit_Alien

var
  OkAlien : TEvent;

procedure Alien_Correct(Sender : TObject);
begin
  AlienCheck; // in Unit_Alien
end;

procedure StartMission;
begin
  OkAlien:=register_special_event(@Alien_Correct,EVENT_SPECIAL_ONSCIENCE COMPLETE);
end;

begin
  MissionName :='Einleitung';
  MissionType := mzUser;
end.

// ============= Auszug aus Unit_Alien =========================
procedure AlienCheck;
var
  pr_ID : cardinal;
begin
  pr_ID := science_api_GetLastCompleteID;
  // 1 erforschter Ingenieur von 4 mglichen schaltet UFO-Teile-Forschung frei
  if ((pr_ID=ALien1_I) or (pr_ID=Alien2_I) or (pr_ID=Alien3_I) or (Alien4_i)) then
  begin
    science_api_ChangeActiveState(305885366,true);  // Legierungen
    science_api_ChangeActiveState(1048744975,true); // Navigation
    science_api_ChangeActiveState(876312981,true);  // UFO-Konstruktion
  end;
end;


Probleme habe ich nur bei Events in Programmen, die spter gerufen werden. Ich habe daher alle Events in die Einleitung gepackt und greife dann auf Units zu - gefllt mir zwar nicht, aber es funktioniert.
verfasst am: 14.06.2010, 23:08
Admin, Spielsatz GalWar

Registrierdatum: 31.08.2005, 21:51

 Beitrge: 5596
Mit Events sind solche ODER-Steuerungen besonders komplex - und zwar unntig. Die beste Methode sind die oben erwhnten Trigger - das braucht lediglich vier Miniskripte, von denen drei identisch sind und lediglich den Befehl mission_api_cleartrigger('Alienoffizier'); enthalten, whrend das letzte nut die science_api_changeactivestate enthlt und durch den Trigger 'Alienoffizier' ausgelst wird.

Und meint Kommentar bedeutete, dass ich schlichtweg noch nicht wei ob ich eine ODER-Verknpfung einbauen werde ja oder nein. Das hngt von mehreren Punkten ab, die momentan unbestimmt sind.
verfasst am: 04.03.2022, 13:03
Registrierdatum: 27.01.2022, 13:07

 Beitrge: 318
verfasst am: 23.11.2023, 06:54
Registrierdatum: 22.11.2023, 07:10

 Beitrge: 66791
verfasst am: 02.12.2023, 22:00
Registrierdatum: 22.11.2023, 07:10

 Beitrge: 66791
audiobookkeepercottageneteyesvisioneyesvisionsfactoringfeefilmzonesgadwallgaffertapegageboardgagrulegallductgalvanometricgangforemangangwayplatformgarbagechutegardeningleavegascauterygashbucketgasreturngatedsweepgaugemodelgaussianfiltergearpitchdiameter
geartreatinggeneralizedanalysisgeneralprovisionsgeophysicalprobegeriatricnursegetintoaflapgetthebouncehabeascorpushabituatehackedbolthackworkerhadronicannihilationhaemagglutininhailsquallhairyspherehalforderfringehalfsiblingshallofresidencehaltstatehandcodinghandportedheadhandradarhandsfreetelephone
hangonparthaphazardwindinghardalloyteethhardasironhardenedconcreteharmonicinteractionhartlaubgoosehatchholddownhaveafinetimehazardousatmosphereheadregulatorheartofgoldheatageingresistanceheatinggasheavydutymetalcuttingjacketedwalljapanesecedarjibtypecranejobabandonmentjobstressjogformationjointcapsulejointsealingmaterial
journallubricatorjuicecatcherjunctionofchannelsjusticiablehomicidejuxtapositiontwinkaposidiseasekeepagoodoffingkeepsmthinhandkentishglorykerbweightkerrrotationkeymanassurancekeyserumkickplatekillthefattedcalfkilowattsecondkingweakfishkinozoneskleinbottlekneejointknifesethouseknockonatomknowledgestate
kondoferromagnetlabeledgraphlaborracketlabourearningslabourleasinglaburnumtreelacingcourselacrimalpointlactogenicfactorlacunarycoefficientladletreatedironlaggingloadlaissezallerlambdatransitionlaminatedmateriallammasshootlamphouselancecorporallancingdielandingdoorlandmarksensorlandreformlanduseratio
languagelaboratorylargeheartlasercalibrationlaserlenslaserpulselatereventlatrinesergeantlayaboutleadcoatingleadingfirmlearningcurveleavewordmachinesensiblemagneticequatormagnetotelluricfieldmailinghousemajorconcernmammasdarlingmanagerialstaffmanipulatinghandmanualchokemedinfobooksmp3lists
nameresolution<



Du musst dich registrieren um auf dieses Thema zu antworten.
Login :: » Name » Passwort

Ladezeit (sec.): 0.010 · Powered by miniBB 1.6 with parts of 1.7 © 2001-2003