Mod-Aktion: Da Cybah die Frage im lieber unter SDK-Aspekten besprechen möchte, gerne... Das Thema wird hier ja anscheinend auch diskutiert. Daher sind einige Beiträge verschoben.
Mod-Aktion: Da Cybah die Frage im lieber unter SDK-Aspekten besprechen möchte, gerne... Das Thema wird hier ja anscheinend auch diskutiert. Daher sind einige Beiträge verschoben.
Kann mir mal einer erklären, wie eine Einheit verschanz wird? Ich raff das einfach nicht.
...too old...
Durch stehenbleiben
Jedes Mal, wenn eine Einheit sich nicht bewegt und keine Spionageaktion durchführt, wird das Attribute m_iFortifyTurns um 1 erhöht (durch changeFortifyTurns, andernfalls auf 0 gesetzt (durch setFortifyTurns. Mit isFortifyable wird geprüft, ob eine Einheit sich verschanzen kann, mit fortifyModifier wird der Verschanzungsbonus berechnet und ausgegeben, abhängig von fortifyModifier, getFortifyTurns und der Konstanten GC.getFORTIFY_MODIFIER_PER_TURN().
Aber das mit den 25% Bonus muss doch auch gemacht werden, in CvSelectionGroup::startMission(,,,) wird die Einheit einfach nur in "ACTIVITY_SLEEP" versetzt, exakt so wie bei auf inaktiv stellen, heilen, o.ä.
Edit: Echt, das wusste ich gar nicht, danke, ich dachte, den Bounus gäebe es nur bei verschanzen. Egal, dann wäre das zumindestens schonmal gelöst, jetzt muss ich nur noch die neue Mission einbauen.
...too old...
OK, was ist ifndef __USRDLL ist das ein Flag vom Makefile? Wenn ja, wann ist es (er(?)) gesetzt
...too old...
Kann mir mal einer verdeutlichen, warum bei CvGameInterface::canHandleAction(...) die letzten zehn Actions geskippt werden?
...too old...
würd gern nochmal hierauf zurückkommen. wir brauchen ne lösung für beide fälle: 1 prereq oder mehrere (and-) prereqs. das mit dem break einfach entfernen funktioniert ja nicht. denn dann würden aus den and-prereqs automatisch or-prereqs, also wie gehabt würde mit einem benötigten gebäude schon true rauskommen.
man müsste die anzahl der benötigten gebäudeklassen irgendwie zählen können vorher, geht das irgendwie? und dann iHasPrereqBuilding += 1 in der schleife und zum schluss wenn Anzahl von iHasPrereqBuilding = iPrereqBuilding return true.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
also so in etwa:
PHP-Code:
// Cybah: BASE UB fremder Zivs werden auch berücksichtigt Start
BuildingClassTypes eBuildingClass = (BuildingClassTypes)(GC.getBuildingInfo(eBuilding).getBuildingClassType());
for (int iP = 0; iP < GC.getNumBuildingInfos(); iP++)
{
int iLoopBuildingClass = GC.getBuildingInfo((BuildingTypes)iP).getBuildingClassType();
if (iLoopBuildingClass == eBuildingClass && getNumBuilding((BuildingTypes)iP) > 0)
{
return false;
}
}
int iPrereqBuildings = 0;
for (iI = 0; iI < GC.getNumBuildingClassInfos(); iI++)
{
if (GC.getBuildingInfo(eBuilding).isBuildingClassNeededInCity(iI))
{
iPrereqBuildings += 1;
int iHasPrereqBuildings = 0;
int iJ;
for (iJ = 0; iJ < GC.getNumCivilizationInfos(); iJ++)
{
ePrereqBuilding = ((BuildingTypes)(GC.getCivilizationInfo((CivilizationTypes)iJ).getCivilizationBuildings(iI)));
if (ePrereqBuilding != NO_BUILDING)
{
if (0 != getNumBuilding(ePrereqBuilding) /* && (bContinue || (getFirstBuildingOrder(ePrereqBuilding) == -1))*/)
{
iHasPrereqBuildings += 1;
}
}
}
if (iPrereqBuildings != iHasPrereqBuildings)
{
return false;
}
}
}
// Cybah: BASE UB fremder Zivs werden auch berücksichtigt End
}
Geändert von Cybah (08. September 2011 um 11:44 Uhr)
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
irgendweshalb geht das so nicht... die gebäude, die nur ein prereqbuilding haben, können damit gebaut werden, aber die mit 2 komischerweise nicht.
bei zwei oder mehr kommt da false raus... warum? das wunder ist in der bauliste ausgegraut, obwohl beides vorhanden ist. bei koloss und schmiede hats funktioniert.
Geändert von Cybah (08. September 2011 um 11:44 Uhr)
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Also wenn ich das richtig gelesen habe, möchtest du das ein Gebäude mehrere andere Gebäude vorraussetzt richtig?!?!
Conflict on Chiron - Sid Meier's Alpha Centauri vs. Call to Power!
Neu Version Conflict on Chiron v3.4 BETA - 16.01.16
Patch1 - 07.04.16
Die deutschen Sounds und Wunderfilme sind bereits in der MainFile integriert!
Ihr könnt sofort loslegen.
Über Feedback würde ich mich freuen...
ich möchte dass beides möglich ist. also mehrere oder nur eins. das ist ja in bts auch so, nur werden dort keine fremden gebäude überprüft, sondern da wird nur die eigene gebäudeliste durchgegangen und wenn ein ub nicht das eigene ub ist, wirds übergangen. d.h. in bts kannste als deutscher mit ner münzanstalt keinen koloss bauen. das möchte ich ändern.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Aha...ich versteh das jetzt mal so...das eine Civ für ein besstimmtes Gebäude mehrere andere Gebäude als Voraussetzung braucht... Aber eine andere Civ für das gleiche Gebäude nur ein bestimmtes Gebäude als Voraussetzung benötigt...oder?!?!
Conflict on Chiron - Sid Meier's Alpha Centauri vs. Call to Power!
Neu Version Conflict on Chiron v3.4 BETA - 16.01.16
Patch1 - 07.04.16
Die deutschen Sounds und Wunderfilme sind bereits in der MainFile integriert!
Ihr könnt sofort loslegen.
Über Feedback würde ich mich freuen...
ne, koloss braucht z.b. nur schmiede. und ein neues wunder in base braucht kaserne und sicherheitsbehörde.
ich will jetzt, dass das neue auch mit ihkanda und sicherheitsbehörde gebaut werden kann, wenn ich nicht zulu bin.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)