Page 6 of 13
Re: Ein paar Scriptfragen.
Posted: Sun May 04, 2008 3:33 pm
by Mr.Wolna
keine Chance, geht auch nicht! Ich kanns echt absolut nicht nachvollziehen, wo der Fehler sein soll!
Re: Ein paar Scriptfragen.
Posted: Sun May 04, 2008 4:00 pm
by Lexx
Und du hast auch wirklich ein vorhandenes Script genommen, dem einen anderen Namen gegeben, das Script so in die scripts.h und scripts.lst geschrieben, die Textdatei von dem Script genauso umbenannt und das ganze im Mapper getestet?
Btw. Scriptnamen dürfen nicht länger als 8 Zeichen sein. Kontrollier mal, wie lang deine Namen sind.
Re: Ein paar Scriptfragen.
Posted: Sun May 04, 2008 4:04 pm
by Mr.Wolna
geht nix
7 Buxchstaben...DENCOMP.int
Re: Ein paar Scriptfragen.
Posted: Sun May 04, 2008 6:53 pm
by Killian
Hmm, hab jetzt dein Script an ein Critter angehängt, MSG-Datei dafür erstellt ->bei mir erkennt er es. Gehts also normal in den Dialog und ich hab 4 Antwortmöglichkeiten. Zumindest geht es im Mapper.
Re: Ein paar Scriptfragen.
Posted: Sun May 04, 2008 7:13 pm
by Lexx
Wir haben die Lösung schon gefunden. Es lag (natürlich) daran, dass Wolna das Script für Killaps Mod erstellt hat, aber selbst nicht die entsprechend angepassten uncompilierten Scripte besitzt, etc.
Logisch, dass es nicht funktionieren konnte.
Re: Ein paar Scriptfragen.
Posted: Sun May 04, 2008 11:00 pm
by Mr.Wolna
Richtig, mit den normalen Fallout kriege ich das auch hin
Re: Ein paar Scriptfragen.
Posted: Fri Aug 15, 2008 8:55 am
by Mr.Wolna
mann ich habe lange nicht gescript..ganz kurz was sit nochmal diese 4?
Re: Ein paar Scriptfragen.
Posted: Fri Aug 15, 2008 11:15 am
by Lexx
Mindestintelligenz, um die Dialogoption benutzen zu können.
Re: Ein paar Scriptfragen.
Posted: Fri Aug 15, 2008 12:29 pm
by Mr.Wolna
Lexx wrote:
Mindestintelligenz, um die Dialogoption benutzen zu können.
kk alles kar thx
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 11:35 am
by Mr.Wolna
Code: Select all
procedure use_obj_on_p_proc begin
variable NeuBaum;
if ((obj_pid(obj_being_used_with) == PID_FIRST_TREE)
or (obj_pid(obj_being_used_with) == PID_SECOND_TREE)
or obj_pid(obj_being_used_with) == PID_THIRD_TREE)) then begin
NeuBaum:=create_object(PID_TEMPLE_SKULL_POLE,tile_num(obj_being_used_with),elevation(obj_being_used_with));
destroy_object(obj_being_used_with);
end
end
dieser CODE verursacht "then" Fehler. EDIT: ES GEHT!!! HAt ne Klammer gefehlt -.-
Lexx erklär mir biite das variable Neu Baum und das elevation,alles andere kann ich nachvollziehen.
Danke.
edit: funzt perfekt jet will ich das nur noch nachvollzihen siehe oben.. und noch was braucht man unbedingt die destroy? oder wir ohne sie dann zwei scenery asugeblendet?
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 3:25 pm
by Lexx
Welche Klammer hat gefehlt? Funktioniert das jetzt richtig?
Das Objekt braucht einen Namen. Du führst eine temporäre Variable mit dem Namen NeuBaum (oder was anderes, ist völlig egal) ein. Danach sagst du, was NeuBaum sein soll (nämlich das neue Objekt) und platzierst es über das Skript. Du musst bei create_object immer angeben, auf welchem Hexfeld und auf welcher Ebene das Objekt erstellt werden soll. Darum ging das bei dir vorher nicht.
Und lern mal richtiges einrücken, dein Code ist immer unübersichtlich.
Code: Select all
procedure use_obj_on_p_proc begin
variable NeuBaum;
if ((obj_pid(obj_being_used_with) == PID_FIRST_TREE)
or (obj_pid(obj_being_used_with) == PID_SECOND_TREE)
or (obj_pid(obj_being_used_with) == PID_THIRD_TREE)) then begin
NeuBaum:=create_object(PID_TEMPLE_SKULL_POLE,tile_num(obj_being_used_with),elevation(obj_being_used_with));
destroy_object(obj_being_used_with);
end
end
edit: funzt perfekt jet will ich das nur noch nachvollzihen siehe oben.. und noch was braucht man unbedingt die destroy? oder wir ohne sie dann zwei scenery asugeblendet?
Du musst das eine Objekt löschen, sonst hast du zwei übereinander. Das wirst du optisch schon merken, wenn du ein kleines Objekt auf ein großes schiebst. Oder teste das im Mapper selbst und schiebe ein Objekt auf ein anderes.
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 3:37 pm
by Mr.Wolna
or ( obj_pid(obj_being_used_with) == PID_THIRD_TREE)) then begin/// hat gefehlt!
ok es funktioniert nun alles bis dahin perfekt, und ich chekke auch was sache ist.
Eins noch muss das variable NeuBaum; gleich nach der prozedur stehen oder kann es belibieg bzw am ende stehen? Oder MUSS es am Anfang stehen?
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 3:52 pm
by Lexx
Sie muss am Anfang der Prozedur stehen.
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 4:08 pm
by Mr.Wolna
alles kalr! wegen des item adds, warum geht das nicht -.-
verstehs net
Code: Select all
procedure use_obj_on_p_proc begin
variable NeuBaum;
if ((obj_pid(obj_being_used_with) == PID_FIRST_TREE)
or (obj_pid(obj_being_used_with) == PID_SECOND_TREE)
or (obj_pid(obj_being_used_with) == PID_THIRD_TREE)) then begin
gfade_out(5);
play_sfx("mamtntba");
NeuBaum:=create_object(PID_TEMPLE_SKULL_POLE,tile_num(obj_being_used_with),elevation(obj_being_used_with));
destroy_object(obj_being_used_with);
gfade_in(5);
add_obj_to_inven(PID_14MM_PISTOL);
end
end
die fade out und der sfy können das nicht sein mit ihne funzut es perfekt!
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 4:17 pm
by Lexx
Du hast schon wieder falsch eingerückt.
Code: Select all
procedure use_obj_on_p_proc begin
variable NeuBaum;
variable NeuHolz;
if ((obj_pid(obj_being_used_with) == PID_FIRST_TREE)
or (obj_pid(obj_being_used_with) == PID_SECOND_TREE)
or (obj_pid(obj_being_used_with) == PID_THIRD_TREE)) then begin
gfade_out(5);
play_sfx("mamtntba");
NeuBaum:=create_object(PID_TEMPLE_SKULL_POLE,tile_num(obj_being_used_with),elevation(obj_being_used_with));
destroy_object(obj_being_used_with);
gfade_in(5);
NeuHolz:=create_object(PID_14MM_PISTOL,0,0);
add_obj_to_inven(dude_obj,NeuHolz);
// du kannst auch add_mult_objs_to_inven(dude_obj,NeuHolz,3); benutzen, wenn du mehrere Items des selben Typs hinzufügen möchtest.
end
end
Hier wieder das selbe wie oben. Neue temporäre Variable erstellt, der Variable das neue Item zugewiesen und dieses dann über add_obj_to_inven dem Spieler hinzugefügt.
/Edit: Ich würde auch noch die Spielzeit vorspulen. So um 30 oder 60 Minuten. Ein Baum fällt ja nicht in zwei Sekunden um, wenn man den mit der Axt berührt. Gleichzeitig könntest du noch eine Nachricht im Log unten links ausgeben, in der steht, wie schwer die Arbeit war, etc... "Du schaffst es, den Baum zu fällen." usw. du kannst auch per Spieler-Fähigkeiten entscheiden, ob ein Baum gefällt werden kann und wenn ja, wie hoch die Wahrscheinlichkeit dafür ist, etc. Da gibt es jetzt sehr viele Möglichkeiten, um gutes Rollenspiel rüber zu bringen. Du könntest auch den Skill des Spielers dafür benutzen, um die Holz-Item Anzahl zu variieren. Jemand der z. B. nie Holz gehackt hat, bekommt nur maximal ein Item, ein Profi aber bedeutend mehr, etc.
Wenn du mit jedem gefälltem Baum die GVAR um eins erhöhst, könntest du das super einrichten. Ist zwar alles etwas Arbeit, aber der Teufel steckt im Detail und Details machen ein Rollenspiel aus.
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 4:26 pm
by Mr.Wolna
stimt haste recht, ich probier gleich deinen code aus, aber sag mal warum geht dieser nicht bzw. er complimiert, bloss stürtz dann der mapper ab
Code: Select all
procedure use_obj_on_p_proc begin
variable NeuBaum;
if ((obj_pid(obj_being_used_with) == PID_FIRST_TREE)
or (obj_pid(obj_being_used_with) == PID_SECOND_TREE)
or (obj_pid(obj_being_used_with) == PID_THIRD_TREE)) then begin
gfade_out(5);
play_sfx("mamtntba");
NeuBaum:=create_object(PID_TEMPLE_SKULL_POLE,tile_num(obj_being_used_with),elevation(obj_being_used_with));
destroy_object(obj_being_used_with);
add_obj_to_inven(dude_obj,PID_10MM_SMG);
gfade_in(5);
end
end
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 4:27 pm
by Lexx
add_obj_to_inven(dude_obj,PID_10MM_SMG);
Deswegen. Du hast das Objekt vorher nicht erstellt, du gibst keine Menge an, die Variable fehlt, etc. Wie oben geschrieben.
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 4:32 pm
by Mr.Wolna
was bedeuten die zwe 0 hiner der pistole und die drei hinter neuholz?
aso ert muss ich das teil createn und dann ins inventrar oder? JA dann kann ich das ja eigentlich ohne neuHolz machen oder?
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 4:39 pm
by Lexx
Probier doch aus. Du wüsstest die Antwort schon längst, wenn du das einfach mal machen würdest.
Mit dem Skript oben erstellst du erst den Gegenstand und schiebst ihn dann ins Spielerinventar. Was das 0,0 da zu bedeuten hat, kann ich dir gerade nicht sagen, weil ich immer noch auf Arbeit bin und nicht an mein Material komme. Ich kann dir aber sagen, dass dein Skript nicht funktionieren wird, wenn du das weglässt.
Re: Ein paar Scriptfragen.
Posted: Wed Aug 20, 2008 4:45 pm
by Mr.Wolna
also mus das variable NeuHolz; defenitiv mit?
wegen den fade out, wieso stell ich die zeit an, aber egal was ich schreibe es bleibt immer gleich!
gibt es welche beispiel scripts wo die zeit geändert wird? föllt mir spontan keienr ein!
EDIT: SO ZEIT IST EIGESTELLT auf 30 Min per Baum!