Benutzer-Werkzeuge

Webseiten-Werkzeuge


tutorials:gemeinsame_sicht_von_zwei_spielern

Gemeinsame Sicht von zwei Spielern

Bei manchen Einzelspieler-Karten sieht man, was der Verbündete macht. Wie erreicht man das?
Hier sind zwei Comfort-Funktionen für das Aktivieren und das Deaktivieren der gemeinsamen Sicht.

Comfort-Funktionen

function ActivateShareExploration(_player1, _player2, _both) --_both auf false setzen, wenn nur einer sehen soll, was der andere treibt (Spion)
	assert(type(_player1) == "number" and type(_player2) == "number" and _player1 <= 8 and _player2 <= 8 and _player1 >= 1 and _player2 >= 1);
	if _both == false then
		Logic.SetShareExplorationWithPlayerFlag(_player1, _player2, 1);
	else
		Logic.SetShareExplorationWithPlayerFlag(_player1, _player2, 1);
		Logic.SetShareExplorationWithPlayerFlag(_player2, _player1, 1);
	end
end
 
function DeactivateShareExploration(_player1, _player2, _both) --_both auf false setzen, wenn nur einer nicht sehen soll, was der andere treibt
	assert(type(_player1) == "number" and type(_player2) == "number" and _player1 <= 8 and _player2 <= 8 and _player1 >= 1 and _player2 >= 1);
	if _both == false then
		Logic.SetShareExplorationWithPlayerFlag(_player1, _player2, 0);
	else
		Logic.SetShareExplorationWithPlayerFlag(_player1, _player2, 0);
		Logic.SetShareExplorationWithPlayerFlag(_player2, _player1, 0);
	end
end

Sollte _both keinen Wert zugewiesen bekommen, so wird für beide Spieler die Sicht auf den anderen Spieler (de-)aktiviert, also hat der Befehl ActivateShareExploration(1, 2) dieselbe Auswirkung wie ActivateShareExploration(1, 2, true).

Die Aufnahme der oberen Comfort-Funktion in den Map-Script genügt, wenn die gemeinsame Sicht nur einmalig für das gesamte Spiel eingerichtet werden soll.

Funktions-Code

Für die Einrichtung einer gegenseitigen Sicht zum Map-Start könnt ihr die im Script vorhandene function InitDiplomacy() nutzen. Für Einrichtung und Änderungen während des laufenden Spiels sind Aufrufe an beliebiger passender Stelle im Script möglich. Das Codebeispiel sieht so aus:

	ActivateShareExploration( 1,2, true ) -- Gegenseitige Sicht zwischen Player1 und Player2



Zur Tutorial-Übersicht

tutorials/gemeinsame_sicht_von_zwei_spielern.txt · Zuletzt geändert: 2021/09/18 19:16 (Externe Bearbeitung)