Skripten: Was mach ich Falsch
» Siedler Map Source Forum » Siedler DEdK Script Forum » Skripten: Was mach ich Falsch
Seiten: 1
Toby
|
#1 06.05.2010 18:00 Beiträge: 17 |
Skripten: Was mach ich Falsch
Was mach ich Falsch das ser Skript nicht Läuft??
Hier ist mal mein Skript.
-------------------------------------------------------------------------------- -- MapName: Die Suche nach Gold -- -- Author: Toby -- -------------------------------------------------------------------------------- -- Include main function Script.Load( Folders.MapTools.."Main.lua" ) IncludeGlobals("MapEditorTools" ) --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called from main script to initialize the diplomacy states function InitDiplomacy() SetHostile(1,2) SetFriendly(1,3) SetHostile(1,4) SetNeutral(2,3) SetFriendly(2,4) SetNeutral(3,4) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called from main script to init all resources for player(s) function InitResources() -- set some resources AddGold (0) AddSulfur(0) AddIron (0) AddWood (0) AddStone (0) AddClay (0) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called to setup Technology states on mission start function InitTechnologies() ForbidTechnology(GT_Alchemy,1) ForbidTechnology(GT_Matchlock,1) ForbidTechnology(GT_Alloying,1) ForbidTechnology(GT_Metallurgy,1) ForbidTechnology(GT_Chemistry,1) ReserchTechnology(GT_Construction,1) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start and after save game is loaded, setup your weather gfx -- sets here function InitWeatherGfxSets() SetupNormalWeatherGfxSet() end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start you should setup your weather periods here function InitWeather() AddPeriodicSummer(120) AddPeriodicRain(45) AddPeriodicSummer(10) AddPeriodicRain(5) AddPeriodicSummer(10) AddPeriodicWinter(75) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start and after save game to initialize player colors function InitPlayerColorMapping() end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start after all initialization is done function FirstMapAction() CreateBriefingBishop() CreateArmyOne() CreateGoldChest1() local VictoryConditionType = 2 if VictoryConditionType == 1 then MapEditor_SetupResourceVictoryCondition( 1000, 1000, 1000, 1000, 1000, 1000 ) elseif VictoryConditionType == 2 then MapEditor_SetupDestroyVictoryCondition(2) end function CreateBriefingBishop() BriefingBishop = {} BriefingBishop.restoreCamera = true BriefingBishop.finished = tributanBishof local page = 0 --page #1 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Wilkommen mein Herr in unserem bescheidenen Kloster." BriefingBishop[page].position = GetPosition("Bishop" ) BriefingBishop[page].dialogCamera = true --page #2 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Dario" BriefingBishop[page].text = "Danke ich bin sehr geehrt aber warum ist denn das Kloster so klein?" BriefingBishop[page].position = GetPosition("Dario" ) BriefingBishop[page].dialogCamera = true --page #3 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Dieser Nebel da. Er ist so dicht das man fast seine Hände nicht mehr vor seinen Augen sehen kann." BriefingBishop[page].position = GetPosition("Fog" ) BriefingBishop[page].dialogCamera = true local npcBishop = {} NpcBishop.name = "Bishop" NpcBishop.briefing = BriefingBishop CreateNPC (npcBishop) end function CreateArmyOne() armyOne = {} armyOne.player = 4 armyOne.id = 1 armyOne.strength = 10 armyOne.position = GetPosition("Truppen" ) armyOne.rodeLength = 1500 SetupArmy(armyOne) local troopDescription = { maxNumberOfSoldiers = 15, minNumberOfSoldiers = 5, experiencePoints = LOW_EXPERIENCE, } troopDescription.leaderType = Entities.CU_Evil_LeaderBearman1 EnlargeArmy(armyOne,troopDescription) EnlargeArmy(armyOne,troopDescription) EnlargeArmy(armyOne,troopDescription) Defend(armyOne) end funktion CreateGoldChest1() CreateGoldChest(GetPosition("GoldChest1" )) CreateChestOpener("Dario" ) StartChestQuest() end -- Level 0 is deactivated...ignore MapEditor_SetupAI(2, 0, 19000, 2, "", 1, 1) MapEditor_SetupAI(3, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(4, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(5, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(6, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(7, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(8, 0, 0, 0, "", 0, 0) -- HQ Defeat Condition MapEditor_CreateHQDefeatCondition() end -- Quest data MapEditor_QuestTitle = "Besiege Kerbaros" MapEditor_QuestDescription = "Besiege Kerbaros auf seiner Bergfestung."
Ich bekomme weder eine Truhe noch eine Armee noch ein Briefing(Ausrufezeichen)
____________________
Manche Maps sind leichter
andere nicht,
doch sie machen alle Spaß wenn man nicht gleich aufgiebt
Dieser Beitrag wurde von Toby am 15.05.2010 um 14:16 editiert.
kingsia
|
#2 06.05.2010 18:35 Beiträge: 750 |
Ein falsche Funktionsaufruf und Funktionen an falsche Stellen.
Versuch es mit folgendes.
Gruss
Kingsia
-------------------------------------------------------------------------------- -- MapName: Die Suche nach Gold -- -- Author: Toby -- -------------------------------------------------------------------------------- -- Include main function Script.Load( Folders.MapTools.."Main.lua" ) IncludeGlobals("MapEditorTools" ) --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called from main script to initialize the diplomacy states function InitDiplomacy() SetHostile(1,2) SetFriendly(1,3) SetHostile(1,4) SetNeutral(2,3) SetFriendly(2,4) SetNeutral(3,4) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called from main script to init all resources for player(s) function InitResources() -- set some resources AddGold (0) AddSulfur(0) AddIron (0) AddWood (0) AddStone (0) AddClay (0) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called to setup Technology states on mission start function InitTechnologies() ForbidTechnology(GT_Alchemy,1) ForbidTechnology(GT_Matchlock,1) ForbidTechnology(GT_Alloying,1) ForbidTechnology(GT_Metallurgy,1) ForbidTechnology(GT_Chemistry,1) ReserchTechnology(GT_Construction,1) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start and after save game is loaded, setup your weather gfx -- sets here function InitWeatherGfxSets() SetupNormalWeatherGfxSet() end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start you should setup your weather periods here function InitWeather() AddPeriodicSummer(120) AddPeriodicRain(45) AddPeriodicSummer(10) AddPeriodicRain(5) AddPeriodicSummer(10) AddPeriodicWinter(75) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start and after save game to initialize player colors function InitPlayerColorMapping() end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start after all initialization is done function FirstMapAction() CreateBriefingBishop() CreateArmyOne() CreateGoldChest1() local VictoryConditionType = 2 if VictoryConditionType == 1 then MapEditor_SetupResourceVictoryCondition( 1000, 1000, 1000, 1000, 1000, 1000 ) elseif VictoryConditionType == 2 then MapEditor_SetupDestroyVictoryCondition(2) end -- Level 0 is deactivated...ignore MapEditor_SetupAI(2, 0, 19000, 2, "", 1, 1) MapEditor_SetupAI(3, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(4, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(5, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(6, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(7, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(8, 0, 0, 0, "", 0, 0) -- HQ Defeat Condition MapEditor_CreateHQDefeatCondition() end -- Diese Block an eine Stelle ausserhalb der FMA verschoben function CreateBriefingBishop() BriefingBishop = {} BriefingBishop.restoreCamera = true BriefingBishop.finished = tributanBishof local page = 0 --page #1 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Wilkommen mein Herr in unserem bescheidenen Kloster." BriefingBishop[page].position = GetPosition("Bishop" ) BriefingBishop[page].dialogCamera = true --page #2 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Dario" BriefingBishop[page].text = "Danke ich bin sehr geehrt aber warum ist denn das Kloster so klein?" BriefingBishop[page].position = GetPosition("Dario" ) BriefingBishop[page].dialogCamera = true --page #3 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Dieser Nebel da. Er ist so dicht das man fast seine Hände nicht mehr vor seinen Augen sehen kann." BriefingBishop[page].position = GetPosition("Fog" ) BriefingBishop[page].dialogCamera = true local npcBishop = {} NpcBishop.name = "Bishop" NpcBishop.briefing = BriefingBishop CreateNPC (npcBishop) end function CreateArmyOne() armyOne = {} armyOne.player = 4 armyOne.id = 1 armyOne.strength = 10 armyOne.position = GetPosition("Truppen" ) armyOne.rodeLength = 1500 SetupArmy(armyOne) local troopDescription = { maxNumberOfSoldiers = 15, minNumberOfSoldiers = 5, experiencePoints = LOW_EXPERIENCE, } troopDescription.leaderType = Entities.CU_Evil_LeaderBearman1 EnlargeArmy(armyOne,troopDescription) EnlargeArmy(armyOne,troopDescription) EnlargeArmy(armyOne,troopDescription) Defend(armyOne) end --funktion CreateGoldChest1() -- falsch geschrieben function CreateGoldChest1() CreateGoldChest(GetPosition("GoldChest1" )) CreateChestOpener("Dario" ) StartChestQuest() end -- Quest data MapEditor_QuestTitle = "Besiege Kerbaros" MapEditor_QuestDescription = "Besiege Kerbaros auf seiner Bergfestung."
warrior1024
|
#3 06.05.2010 19:55 Beiträge: 345 |
Noch ein paar Hinweise:
Du kannst per [code]Hier könnte ihre Werbung stehen![/code] ein Skript posten. Das sieht dann so aus:
Hier könnte ihre Werbung stehen!
Außerdem hast du in deinem Skript einen 5-Sekunden-Regen, aber der Wetterwechsel dauert länger. Je nach GFX-Set unterschiedlich. Das müsste dann komisch aussehen, wenn z.B. die Sichtweite noch gering ist, aber schon Schneeflocken fallen/die Sonne scheint.
Und damit du nicht bei jedem Fehler nachfragen musst:
http://www.siedler-games.de/si...als:fehlermeldungen_aktivieren
Oh, und die meisten Spieler hassen Regen wie die Pest! Wenn du eine Map hier auf der Base veröffentlichst, inder unnötig Regen ist, wirst du schon miese Beurteilungen bekommen.
Bei Skriptfragen PN(persöhnliche Nachricht) an irgendeinen Skripter auf der Base, die sind alle zahm, keine Angst
warrior1024
____________________
"Banken machen keine Fehlentscheidungen! Haben Euch das Eure Eltern nicht beigebracht?"
- Bankier Samael Silren, Enderal
Kalle
|
#4 06.05.2010 19:59 Beiträge: 1150 |
zunächst vermisse ich ein " END " für die FMA....
Zitat von toby:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- This function is called on game start after all initialization is done
function FirstMapAction()
....
if VictoryConditionType == 1 then
MapEditor_SetupResourceVictoryCondition(1000,1000,1000,1000,1000,1000 )
elseif VictoryConditionType == 2 then
MapEditor_SetupDestroyVictoryCondition(2)
end
end -- das hier fehlt!!!
function CreateBriefingBishop()
...
Versuch Dich mal im Thema Notepad++ einzulesen, der hilft dabei. Jede Funktion braucht ein END:
function FirstMapAction() -- dies und das end function CreateBriefingBishop() -- dies und jenes end
... und durch die vom Editor vorgegebene Victory... fehlt nach dem IF ein END, wofür das end von der FMA verwendet wird. Falls Du noch im internen Editor scriptest, musst Du nur mal " Prüfe Script " aufrufen, der sollte meckern...
Viel Übung ist nötig, solche Fehler zu vermeiden.
Tipp:
Solange Du mit dem MapEditor scriptest, nutze immer wieder, sobald Du eine Funktion neu dazugeschrieben hast, den Syntax-Check (Script - Teste Script), da kannst Du schon mal in Teilen erkennen, wo ein Fehler liegt.
Der zweite Fehler ist ein Schreibfehler am Ende des Scripts:
funktion CreateGoldChest1()
-- schreibt sich FUNCTION mit C !!!!
Also, etwas scripten, Syntax prüfen. Oder hier: Speichern, und Teile (von Function bis end ) löschen, testen... so findet man Fehler!
Gruß
Kalle
____________________
Lieber Siedeln statt (fern)sehen.....
Anarki
|
#5 06.05.2010 20:25 Beiträge: 518 |
Mh, ich habe hier mal einen Beitrag gelesen, indem gefragt wurde:
Wie lang braucht man um Skripten zu lernen?
Die Antwort sah in etwa so aus:
- allgemeine Programmiergrundlagen sind ein Vorteil, geht natürlich auch ohne
- 3-6 Monate wenn man sich damit immer wieder beschäftigt, aber man lernt nie aus
Naja, meine Erfahrung, weil ich das volle Programm durchgemacht habe... ohne Ausführliches Studium des dedk-Scriptwikis geht garnix.
Der Lesefaule wird also nicht viel schaffen
Kleine Maps mit ganz einfacher KI sind vermutlich mal auch so zu schaffen und für den anfang sicher auch schon nicht schlecht.
____________________
Siedler V Tool: Selbstextrahierende Maps erstellen
Bitte testen und kommentieren
kingsia
|
#6 06.05.2010 20:52 Beiträge: 750 |
Zitat von Kalle:
zunächst vermisse ich ein " END " für die FMA....
Hallo Kalle, das hatte ich auch erst gedacht aber wenn man die Funktionen nach der FMA schiebt stimmt es wie es geschrieben ist. Also kein fehlende END.
Zitat von Kalle:
Der zweite Fehler ist ein Schreibfehler am Ende des Scripts:
funktion CreateGoldChest1()
-- schreibt sich FUNCTION mit C !!!!
Hatte ich Toby schon angewiesen. Lies bitte den vorherige Posts bevor du die gleiche Information nochmal gibst.
Zitat von Kalle:
Also, etwas scripten, Syntax prüfen. Oder hier: Speichern, und Teile (von Function bis end ) löschen, testen... so findet man Fehler!
Gruß
Kalle
Stimme ich zu
Gruss
Kingsia
Toby
|
#7 07.05.2010 14:30 Beiträge: 17 |
kingsia der Skriptcode von oben der Funktioniert immernoch nicht ich habe mir erlaupt es mit Copy-Paste mal zu versuchen und er läuft immernoch nicht.
Zitat von kingsia -- This function is called on game start after all initialization is done function FirstMapAction() CreateBriefingBishop() CreateArmyOne() CreateGoldChest1() local VictoryConditionType = 2 if VictoryConditionType == 1 then MapEditor_SetupResourceVictoryCondition( 1000, 1000, 1000, 1000, 1000, 1000 ) elseif VictoryConditionType == 2 then MapEditor_SetupDestroyVictoryCondition(2) end -- Level 0 is deactivated...ignore MapEditor_SetupAI(2, 0, 19000, 2, "", 1, 1) MapEditor_SetupAI(3, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(4, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(5, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(6, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(7, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(8, 0, 0, 0, "", 0, 0) -- HQ Defeat Condition MapEditor_CreateHQDefeatCondition() end -- Diese Block an eine Stelle ausserhalb der FMA verschoben function CreateBriefingBishop() BriefingBishop = {} BriefingBishop.restoreCamera = true BriefingBishop.finished = tributanBishof local page = 0 --page #1 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Wilkommen mein Herr in unserem bescheidenen Kloster." BriefingBishop[page].position = GetPosition("Bishop" ) BriefingBishop[page].dialogCamera = true --page #2 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Dario" BriefingBishop[page].text = "Danke ich bin sehr geehrt aber warum ist denn das Kloster so klein?" BriefingBishop[page].position = GetPosition("Dario" ) BriefingBishop[page].dialogCamera = true --page #3 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Dieser Nebel da. Er ist so dicht das man fast seine Hände nicht mehr vor seinen Augen sehen kann." BriefingBishop[page].position = GetPosition("Fog" ) BriefingBishop[page].dialogCamera = true local npcBishop = {} NpcBishop.name = "Bishop" NpcBishop.briefing = BriefingBishop CreateNPC (npcBishop) end function CreateArmyOne() armyOne = {} armyOne.player = 4 armyOne.id = 1 armyOne.strength = 10 armyOne.position = GetPosition("Truppen" ) armyOne.rodeLength = 1500 SetupArmy(armyOne) local troopDescription = { maxNumberOfSoldiers = 15, minNumberOfSoldiers = 5, experiencePoints = LOW_EXPERIENCE, } troopDescription.leaderType = Entities.CU_Evil_LeaderBearman1 EnlargeArmy(armyOne,troopDescription) EnlargeArmy(armyOne,troopDescription) EnlargeArmy(armyOne,troopDescription) Defend(armyOne) end --funktion CreateGoldChest1() -- falsch geschrieben function CreateGoldChest1() CreateGoldChest(GetPosition("GoldChest1" )) CreateChestOpener("Dario" ) StartChestQuest() end -- Quest data MapEditor_QuestTitle = "Besiege Kerbaros" MapEditor_QuestDescription = "Besiege Kerbaros auf seiner Bergfestung."
Gruß,
Toby
____________________
Manche Maps sind leichter
andere nicht,
doch sie machen alle Spaß wenn man nicht gleich aufgiebt
kingsia
|
#8 07.05.2010 16:30 Beiträge: 750 |
Der Bischof wird nicht als NPC markiert wegen der Gross/Klein-schreibung.
local npcBishop = {} NpcBishop.name = "Bishop" NpcBishop.briefing = BriefingBishop CreateNPC (npcBishop)
Es muss entweder so sein
local npcBishop = {} npcBishop.name = "Bishop" npcBishop.briefing = BriefingBishop CreateNPC (npcBishop)
oder
local NpcBishop = {} NpcBishop.name = "Bishop" NpcBishop.briefing = BriefingBishop CreateNPC (NpcBishop)
Gruss
Kingsia
Toby
|
#9 07.05.2010 19:49 Beiträge: 17 |
Der skript sieht momentan so aus und funktionirt imernoch nicht(Briefing)
function FirstMapAction() createBriefingBishop() createGoldChest1() end function createBriefingBishop() BriefingBishop = {} BriefingBishop.restoreCamera = true local page = 0 -- page #1 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Willkommen mein Herr in unserem bescheidenen Kloster." BriefingBishop[page].position = GetPosition("bishop") BriefingBishop[page].dialogCamera = true -- page #2 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Danke ich bin sehr geehrt aber warum ist denn das Kloster so klein?" BriefingBishop[page].position = GetPosition("Dario") BriefingBishop[page].explore = BRIEFING_EXPLORATION_RANGE BriefingBishop[page].marker = ANIMATED_MARKER -- page #3 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Dieser Nebel da. Er ist so dicht das man fast seine Hände nicht mehr vor seinen Augen sehen kann." BriefingBishop[page].position = GetPosition("Fog") local npcBishop = {} npcBishop.name="Bishop" npcBishop.brifing = BriefingBishop CreateNPC(npcBishop) end
____________________
Manche Maps sind leichter
andere nicht,
doch sie machen alle Spaß wenn man nicht gleich aufgiebt
Dieser Beitrag wurde von Toby am 08.05.2010 um 10:05 editiert.
kingsia
|
#10 07.05.2010 20:12 Beiträge: 750 |
Wegen ein Tippfehler kann es auch nicht funktionieren
npcBishop.brifing = BriefingBishop
Muss so sein
npcBishop.briefing = BriefingBishop
gruss
Kingsia
Peter-FS
|
#11 07.05.2010 22:53 Beiträge: 1086 |
Noch ein Schreibfehler (Research) aus dem ersten Eintrag.
ReserchTechnology(GT_Construction,1)
Ich verwende es so
ResearchTechnology(Technologies.GT_Construction, 1)
Gruß Peter
____________________
Man muss nicht alles wissen, man muss nur wissen wo es steht!
Peter-FS
|
#12 07.05.2010 23:36 Beiträge: 1086 |
Karte getestet
Hallo Toby,
so fuktionierts, wenn alle Positionen vorhanden sind. Du musst deinen Figuren aber auch diese Namen geben.
Dario, Bishop, Fog, Truppen, GoldChest1
Hauptquartier Player1 und Player2
Wenn es immer noch nicht funktioniert, kann ich dir auch die Testkarte schicken.
Peter
-------------------------------------------------------------------------------- -- MapName: Die Suche nach Gold -- -- Author: Toby -- -------------------------------------------------------------------------------- -- Include main function Script.Load( Folders.MapTools.."Main.lua" ) IncludeGlobals("MapEditorTools" ) --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called from main script to initialize the diplomacy states function InitDiplomacy() SetHostile(1,2) SetFriendly(1,3) SetHostile(1,4) SetNeutral(2,3) SetFriendly(2,4) SetNeutral(3,4) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called from main script to init all resources for player(s) function InitResources() -- set some resources AddGold (1000) AddSulfur(0) AddIron (0) AddWood (1000) AddStone (1000) AddClay (1000) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called to setup Technology states on mission start function InitTechnologies() ForbidTechnology(Technologies.GT_Alchemy,1) ForbidTechnology(Technologies.GT_Matchlock,1) ForbidTechnology(Technologies.GT_Alloying,1) ForbidTechnology(Technologies.GT_Metallurgy,1) ForbidTechnology(Technologies.GT_Chemistry,1) ResearchTechnology(Technologies.GT_Construction, 1) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start and after save game is loaded, setup your weather gfx -- sets here function InitWeatherGfxSets() SetupNormalWeatherGfxSet() end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start you should setup your weather periods here function InitWeather() AddPeriodicSummer(120) --AddPeriodicRain(45) --AddPeriodicSummer(10) --AddPeriodicRain(5) --AddPeriodicSummer(10) --AddPeriodicWinter(75) end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start and after save game to initialize player colors function InitPlayerColorMapping() end --++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- This function is called on game start after all initialization is done function FirstMapAction() CreateBriefingBishop() CreateArmyOne() CreateGoldChest1() local VictoryConditionType = 2 if VictoryConditionType == 1 then MapEditor_SetupResourceVictoryCondition( 1000, 1000, 1000, 1000, 1000, 1000 ) elseif VictoryConditionType == 2 then MapEditor_SetupDestroyVictoryCondition(2) end -- Level 0 is deactivated...ignore MapEditor_SetupAI(2, 0, 19000, 2, "", 1, 1) MapEditor_SetupAI(3, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(4, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(5, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(6, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(7, 0, 0, 0, "", 0, 0) MapEditor_SetupAI(8, 0, 0, 0, "", 0, 0) -- HQ Defeat Condition MapEditor_CreateHQDefeatCondition() end -- Diese Block an eine Stelle ausserhalb der FMA verschoben function CreateBriefingBishop() BriefingBishop = {} BriefingBishop.restoreCamera = true --BriefingBishop.finished = tributanBishof local page = 0 --page #1 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Wilkommen mein Herr in unserem bescheidenen Kloster." BriefingBishop[page].position = GetPosition("Bishop" ) BriefingBishop[page].dialogCamera = true --page #2 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Dario" BriefingBishop[page].text = "Danke ich bin sehr geehrt aber warum ist denn das Kloster so klein?" BriefingBishop[page].position = GetPosition("Dario" ) BriefingBishop[page].dialogCamera = true --page #3 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Dieser Nebel da. Er ist so dicht das man fast seine Hände nicht mehr vor seinen Augen sehen kann." BriefingBishop[page].position = GetPosition("Fog" ) BriefingBishop[page].dialogCamera = true local npcBishop = {} npcBishop.name = "Bishop" npcBishop.briefing = BriefingBishop CreateNPC (npcBishop) end function CreateArmyOne() armyOne = {} armyOne.player = 2 armyOne.id = 1 armyOne.strength = 10 armyOne.position = GetPosition("Truppen" ) armyOne.rodeLength = 1500 SetupArmy(armyOne) local troopDescription = { maxNumberOfSoldiers = 15, minNumberOfSoldiers = 5, experiencePoints = LOW_EXPERIENCE, } troopDescription.leaderType = Entities.CU_Evil_LeaderBearman1 EnlargeArmy(armyOne,troopDescription) EnlargeArmy(armyOne,troopDescription) EnlargeArmy(armyOne,troopDescription) Defend(armyOne) end --funktion CreateGoldChest1() -- falsch geschrieben function CreateGoldChest1() CreateGoldChest(GetPosition("GoldChest1" )) CreateChestOpener("Dario" ) StartChestQuest() end -- Quest data MapEditor_QuestTitle = "Besiege Kerbaros" MapEditor_QuestDescription = "Besiege Kerbaros auf seiner Bergfestung."
____________________
Man muss nicht alles wissen, man muss nur wissen wo es steht!
Toby
|
#13 08.05.2010 09:15 Beiträge: 17 |
Es hat sich geklärt
function FirstMapAction() createBriefingBishop() createGoldChest1() end function createBriefingBishop() BriefingBishop = {} BriefingBishop.restoreCamera = true local page = 0 -- page #1 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Willkommen mein Herr in unserem bescheidenen Kloster." BriefingBishop[page].position = GetPosition("bishop") -- page #2 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Dario" BriefingBishop[page].text = "Danke ich bin sehr geehrt aber warum ist denn das Kloster so klein?" BriefingBishop[page].position = GetPosition("Dario") -- page #3 page = page + 1 BriefingBishop[page] = {} BriefingBishop[page].title = "Bishop" BriefingBishop[page].text = "Dieser Nebel da. Er ist so dicht das man fast seine Hände nicht mehr vor seinen Augen sehen kann." BriefingBishop[page].position = GetPosition("Fog") BriefingBishop[page].explore = BRIEFING_EXPLORATION_RANGE local npcBishop = {} npcBishop.name="Bishop" npcBishop.briefing = BriefingBishop --npcBishop.briefing falsch geschriben CreateNPC(npcBishop) end function createGoldChest1() CreateRandomGoldChest(GetPosition("GoldChest1")) CreateChestOpener("Dario") StartChestQuest() end
Danke kingsia der Tippfehler hat auch die Truhe blockiert sodass sie nicht erschienen ist.
Gruß,
Toby
____________________
Manche Maps sind leichter
andere nicht,
doch sie machen alle Spaß wenn man nicht gleich aufgiebt
kingsia
|
#14 08.05.2010 19:02 Beiträge: 750 |
Man muss bei dem klein/gross-schreiben wirklich aufpassen.
Genauso wie bei der deutsche Sprache.
Soll ich "ihre" oder "Ihre" schreiben?
Strg-C und Strg-V kann sehr hilfreich sein.
Gruss
Kingsia
Seiten: 1