DOTT Interface (2 Personen) für AGS 2.7
DOTT Interface (2 Personen) für AGS 2.7
Ich suche ein Template für AGS mit DOTT Interface (also so wie bei Maniac Mansion Mania) - mit dem man allerdings zwei Personen steuern kann - also wie bei Day of the Tentacle man zwischen zwei Personen wechseln kann.
Gibt es das?! Ich habe ein Dott Template gefunden - bei dem man allerdings drei hat - und man die im Template existierenden Charaktere nicht austauschen kann. Das Gefunde Template geht auch nur bei AGS 2.62.
Wenn jemand helfen kann - vielen Dank
Gibt es das?! Ich habe ein Dott Template gefunden - bei dem man allerdings drei hat - und man die im Template existierenden Charaktere nicht austauschen kann. Das Gefunde Template geht auch nur bei AGS 2.62.
Wenn jemand helfen kann - vielen Dank
-
- Adventure-Gott
- Beiträge: 4575
- Registriert: 13.07.2004, 14:04
- Wohnort: Da wo muss
- Kontaktdaten:
Nun ja... AGS 2.7 ist objektorientiert, hat mehr Funktionen, ist komfortabler... stimmt, wieso eigentlich?Anonymous hat geschrieben:Würde mich auch interessieren . Gibt es einen Grund warum die AGS 2.7 verwenden möchtest?
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
Ich glaube, diese Fragestellung wurde hier schon mal beantwortet.
Theoretisch ist das ganze sehr einfach, da im Global Script des MMM-Packs bereits eine eigene ChangePlayer-Funktion enthalten ist. Diese ändert nicht nur den aktiven Character, sondern scrollt gegebenenfalls rüber, falls beide in einem Raum sind.
Zusätzlich muss man jetzt nur einen Button einfügen (entweder auf dem vorhandenen GUI, notfalls muss man eben das Inventarfenster verkleinern, oder auf einem extra-GUI), der folgende Funktion ausführt:
Damit der Knopf diese Funktion ausführt, muss man seinen Script name auf "Cpbutton" und sein Left click auf "Run Script" setzen.
Außerdem muss der Code natürlich in der on_interface_click im Global Script an die entsprechende Stelle.
Theoretisch ist das ganze sehr einfach, da im Global Script des MMM-Packs bereits eine eigene ChangePlayer-Funktion enthalten ist. Diese ändert nicht nur den aktiven Character, sondern scrollt gegebenenfalls rüber, falls beide in einem Raum sind.
Zusätzlich muss man jetzt nur einen Button einfügen (entweder auf dem vorhandenen GUI, notfalls muss man eben das Inventarfenster verkleinern, oder auf einem extra-GUI), der folgende Funktion ausführt:
Code: Alles auswählen
if (player==cBernard) {
Cpbutton.NormalGraphic=xxx; // Bernards Kopf-Sprite
ChangePlayer(cBernard.ID); // MMM-Funktion arbeitet mit Nummer des Chars
}
else {
Cpbutton.NormalGraphic=xxx; // Sandys Kopf-Sprite
ChangePlayer(cSandy.ID);
}
}
Außerdem muss der Code natürlich in der on_interface_click im Global Script an die entsprechende Stelle.
Use gopher repellent on funny little man
Ich bekomme das einfach nicht hin *heul*.
Das kann doch nicht so superschwer sein.
Ich habe schon die GUI reduziert auf 8 Buttions:
Schauen, Nehmen, Öffnen, Benutzen, Geben,Reden Ziehen und ein Kopf.
Das Kopf Symbol muss sich nicht mal ändern können. Es geht lediglich darum das man beim knopf auf Bernhard bzw. auf Sandy wechselt.
Könnte mir einer eventuell das angepasste senden?
Meine eMail lautet dream44@Schweiz.com
Vielen Dank im Vorraus,
oder einfach mir mal genauer klären wo ich was ändern muss. Ich versuchs schon den ganzen Tag, habe wohl tomaten auf den Augen. :_(
Das kann doch nicht so superschwer sein.
Ich habe schon die GUI reduziert auf 8 Buttions:
Schauen, Nehmen, Öffnen, Benutzen, Geben,Reden Ziehen und ein Kopf.
Das Kopf Symbol muss sich nicht mal ändern können. Es geht lediglich darum das man beim knopf auf Bernhard bzw. auf Sandy wechselt.
Könnte mir einer eventuell das angepasste senden?
Meine eMail lautet dream44@Schweiz.com
Vielen Dank im Vorraus,
oder einfach mir mal genauer klären wo ich was ändern muss. Ich versuchs schon den ganzen Tag, habe wohl tomaten auf den Augen. :_(
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
Es gibt im Global Script eine Funktion namens "interface_click" (Menü -> Script -> interface_click).
Jedesmal, wenn man auf einen GUIButton klickt, wird die Funktion aufgerufen und ihr die Nummer des GUIs und des Buttons geko-, äh, übergeben.
Das GUI ist Nummer 1, angenommen, der Button hat die Nummer 12, dann passiert bei Klick das hier:Du musst also wie oben beschrieben zur interface_click-Funktion, die if-Schleife suchen, die mit losgeht (MAINGUI ist einfach eine Variable, die den Wert 1 hat, sie wird nur verwendet, um den Code lesbarer zu machen), und den Code da reinschreiben.
Bei MMM würde das dann so aussehen:
Jedesmal, wenn man auf einen GUIButton klickt, wird die Funktion aufgerufen und ihr die Nummer des GUIs und des Buttons geko-, äh, übergeben.
Das GUI ist Nummer 1, angenommen, der Button hat die Nummer 12, dann passiert bei Klick das hier:
Code: Alles auswählen
interface_click(1, 12);
Code: Alles auswählen
if (interface==MAINGUI)
Bei MMM würde das dann so aussehen:
Code: Alles auswählen
function interface_click (int interface, int button){
string buffer;
// ------------------------------------------------------
if (interface == MAINGUI)
{
if (IsGUIOn (OPTIONS) || IsGUIOn (RESTORE) || IsGUIOn (SAVE))
{
// disable GUI, when other GUI is on
}
// Inventory Scrolling:
else if (button == 10)
{
if (game.top_inv_item < game.num_inv_items - game.num_inv_displayed)
{
game.top_inv_item = game.top_inv_item + (game.num_inv_displayed / 2);
}
}
else if (button == 9)
{
if (game.top_inv_item > 0)
{
game.top_inv_item = game.top_inv_item - (game.num_inv_displayed / 2);
}
}
else if (button==12) {
// ChangePlayer-code von oben <----------------------######
}
// click on action button
else
{
SetAction (button_action [button]);
}
}
Use gopher repellent on funny little man
- Rocco
- Adventure-Treff
- Beiträge: 1019
- Registriert: 25.11.2003, 16:20
- Wohnort: Ronville
- Kontaktdaten:
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
-
- Adventure-Gott
- Beiträge: 4575
- Registriert: 13.07.2004, 14:04
- Wohnort: Da wo muss
- Kontaktdaten:
Bedingungsausführungsteilprogramm, wieso?
Ach ja, nochmal frohes neues und so
Ach ja, nochmal frohes neues und so
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
- Floyd
- Logik-Lord
- Beiträge: 1088
- Registriert: 14.03.2004, 19:59
...
Oder auch if-Abfrage.
Der verschwundene Husky - ein 2D Point&Click Adventure
Einen schönen Orbit, Bürger!
Einen schönen Orbit, Bürger!
- Rocco
- Adventure-Treff
- Beiträge: 1019
- Registriert: 25.11.2003, 16:20
- Wohnort: Ronville
- Kontaktdaten: