map.file = "sell_clothing.sve" scenario.short_description = "Make & Sell Textiles" scenario.author = "Severous (scripting by Dwachs & Freca)" scenario.version = "0.2" // texts function get_info_text(pl) { return @"Am 1.1.1934 startet ein Rennen, bei dem innerhalb eines Jahres mindestens eine Palette Texilien nach Salisbury geliefert werden muss. Um das dafür nötige Kapital zu bekommen, hast du ein Abkommen mit dem Besitzer der Konservenfabrik in Coventry. Er stellt dir 500.000 zur Verfügung um seinen Betrieb ordentlich ans Laufen zu bringen. So lange du nicht pleite gehts und am 1.1.1934 keine Schulden da sind, hast du fast völlig freie Hand. Die Einschränkungen und Anforderungen die der Fabrikbesitzer vorgibt, werden dir nach und nach mitgeteilt. Dummerweise gibt es keine Frachtflugzeuge. " } function get_rule_text(pl) { local text = "Ausser folgenden Einschränkungen kannst du alles bauen und alle Industrien verbinden..

" // local text = "You can set up routes anywhere on the map and service any existing industries.

" //local text = "" //text+= persistent.stage //print(text) if (persistent.stage <= 2) text += @"-- Waren dürfen nur mit Schiffen über das Meer bei Coventry transportiert werden.

Keine Brücken oder Tunnel übers Wasser.


" // if (persistent.stage > 1) // text += @"-- You must keep your trawlers employed for the next years (must not over supply the fish factory).

" return text } function get_goal_text(pl) { local text = "" if (persistent.stage == 0) { text = @" Stufe 1:

Bring 1000 Fisch ins Lager der Konservernfabrik und beschäftige mindestens 10 Trawler. Da die Fischereibehörde besorgt um die Fischgründe ist, sind Tunnel und Brücken verboten.

Das Ganze sollte bis spätestens Ende 1930 erledigt sein. Trigger:wenn 10 Trawler die etwas bei der Konservenfabrik abgeliefert haben, 1000 Fisch im Lager " } if (persistent.stage == 1) { text = @" Stufe 2:

Der Fisch damit die Konservenproduktion anlaufen kann ist da. Produziere nun bei London etwas Stahl. Um den Transport nach Coventry musst du dich erst in der nächsten Stufe kümmern. Du solltest jedenfalls eine Menge Geld dafür vorhalten... Trigger:Stahl im Stahlwerk produziert " } //freca if (persistent.stage ==2) { text = @" Stufe 3:

Der Fabrikbesitzer ist so begeistert von deiner bisherigen Arbeit, daß er dir höhere Ziele setzt: Beschäftige 20 Trawler. Liefere Stahl in die Konservernfabrik und dann Konserven in den Supermarkt in Coventry. Leider wird dir kein Rabatt beim Kauf des Stahlschiffes eingeräumt und du musst den vollen Preis bezahlen. Der viele Fisch im Lager fängt an zu stinken! Deinem Chef gefällt das überhaupt nicht und er droht dir mit Kündigung falls mehr als 15000 Fische rumliegen. Um also die 20 Trawler zu beschäftigen gibt es nur eine Lösung: Schaff soviel Stahl ran wie nur möglich! Trigger:Konserven im Supermarkt angekommen.& 20 Trawler " } if (persistent.stage ==3) { text = @" Stufe 4:

Es ist an der Zeit die Vorbereitungen für das Rennen zu beginnen. Produziere Textilien in Coventry. Falls allerdings schon Textilien auf den Weg gebracht werden, zählt das als Frühstart und wird mit Disqualifikaton bestraft!

Die Fischereibehörde hat genügend Daten gesammelt und erlaubt den Bau von Brücken oder Tunneln bei Coventry. Trigger: Textilien hergestellt. " } if (persistent.stage ==4) { text = @" Stufe 5:

Der Konservenproduzent will seinen Marktanteil erhöhen und fordert dich auf jetzt auch Fischkonserven nach London zu liefern. Vermutlich hast du Schulden. Solange du aber jeden Monat einen hübschen Profit machst, ist das kein Problem. Trigger: Konserven im Supermarkt in London " } if (persistent.stage == 5){ test = @" Stufe 6:

Dein Auftraggeber ist völlig begeistert und du kannst dich auf die letzten Vorbereitungen konzentrieren: Bau eine Verbindung nach Salisbury und bring bis zum 1.1.1934 das Konto in die schwarzen Zahlen. Und sorg dafür, daß du bis zum Ende des Rennens keine neue Schulden machen musst! Sonst... du weisst schon... Trigger: am 1.1.1934 keine schulden // Export of textiles now permitted. On 1 Jan 1934 you can complete a textiles route. Textiles can now appear, be loaded and moved. // Get textiles (any amount) to the Shopping mall at the other end of the map as quickly as you can. // Remain in credit at the bank. " } if (persistent.stage == 6){ test = @" Stufe 7:

Auf die Plätze, fertig, los! Mach keine Schulden und drück auf die Tube! Trigger: Textilien in Salisbury angekommen vorm 31.12.1934 " } return text } function get_result_text(pl) { local percentage = is_scenario_completed(pl) if (percentage == -10) { // time out return @"Kündigung!

You were not able to employ and keep running enough trawlers. The seaman's lobby finally could convince your bosses to replace you by one of the fisherman's friends." } if (percentage == -11) { // over supply of fish cannery return @"Kündigung!

Dein Chef ist im wahrsten Sinne des Wortes stinksauer. Der letzte Trawler brachte das Lager und das Fass zum Überlaufen. " } switch(persistent.stage) { case 0: local trawler =get_trawler_count() local fische = fish_cannery_fish_slot.storage[0] return @""+trawler +" Trawler und "+fische+ " Fische. Reicht noch nicht!" case 1: return @"Die Fischerei läuft an. Gut gemacht!" case 2: return @"Der Stahl stapelt sich und die Hochöfen glühen." //freca case 3: return @"Die Bevölkerung on Coventry reisst dem Supermarkt die Fischkonserven aus den Händen. Und mit den 20 Trawlern ist der Nachschub gesichert." case 4: return @"Der erste Stoffballen liegt in der Abholhalle. Ob die Erlaubnis jetzt Brücken bauen zu dürfen noch etwas bringt?" case 5: return @"Die Londoner scheinen die Fischdosen zu lieben. Vielleicht solltest du noch Chips verkaufen. " case 6: return @"Die Strecke nach Salisbury steht. Der Starttermin rückt näher.Es ist Neujahr 1934 und du bis schuldenfrei" case 7: return @"Gewonnen!" } return "You did not achieve anything. Absolutely." } function is_scenario_completed(pl) { local time = get_time() // check for oversupply local fish_in_storage = fish_cannery_fish_slot.storage[0] //if (fish_cannery_fish_slot.storage[0] > fish_cannery_fish_slot.max_storage) return -11 if (fish_in_storage > 14910) return -11 //fabrik nimm nichts an, wenn es über 15000 geht // check for trawlers local trawlers = get_trawler_count() if (persistent.stage == 1 && trawlers < 10) return -10 if (persistent.stage == 2 && trawlers < 10) return -10 if (persistent.stage > 2 && trawlers < 20) return -10 //check for delivered textiles local sold_textiles = 0 //textile_factory_output.slot.delivered[0] if (persistent.stage < 5 && sold_textiles >0) return -12 //test // local stahl = steel_factory_output_slot.storage[0] // if (stahl >0) print("stahl: "+stahl) switch(persistent.stage) { case 0: if (time.year > 1930) return -10 // lost at stage 0 if (trawlers >= 10 && fish_in_storage >1000) { persistent.stage ++; gui.open_info_win() } return min(10, trawlers) case 1: local stahl = steel_factory_steel_slot.storage[0] if (stahl > 0) { persistent.stage ++; gui.open_info_win() return 25 } return 20 case 2: local received = get_goods_at_coventry_supermarket() if (received > 0 && trawlers >=20) { persistent.stage ++; gui.open_info_win() return 40 } return 20 //freca case 3: local build = textile_factory_textile_slot.storage[0] if (build > 0) { // bridge & tunnel allowed set_rule_bridge_coventry_sound( 0 /* allow */ ) persistent.stage ++; gui.open_info_win() return 60 } return 40 case 4: if (get_goods_at_coventry_supermarket() >0) { persistent.stage++ gui.open_info_win() return 75 } case 5: if (time.year = 1934) if (player.cash[0]>0) { persistent.stage++ gui.open_info_win() return 95 } case 6: if (get_goods_at_salisbury_supermarket() >0) { persistent.stage++ gui.open_info_win() return 100 } default: return 100 } } fish_cannery_fish_slot <- {} coventry_supermarket_input <- {} london_supermarket_input <- {} textile_factory_output <- {} steel_factory_output <- {} steel_factory_input <- {} steel_factory_steel_slot <-{} textile_factory_textile_slot <-{} player <- {} salisbury_shoppingmall_input <-{} player <- {} function get_trawler_count() { local trawlers = 0 local fish_catg = good_desc_x("fish").catg_index local list = convoy_list_x() foreach(cnv in list) { if (cnv.waytype == wt_water) { if (cnv.goods_catg_index.find( fish_catg) != null && cnv.transported_goods.reduce(max)>0) { trawlers++ } } } return trawlers } function get_goods_at_coventry_supermarket() { local received = 0; foreach(slot in coventry_supermarket_input) { received += slot.received[0] } return received } //freca function get_goods_at_london_supermarket() { local received = 0; foreach(slot in london_supermarket_input) { received += slot.received[0] } return received } function get_goods_at_salisbury_shoppingmall() { local received = 0 foreach(slot in salisbury_shoppingmall_input) { received += slot.received[0] } return received } function start() { persistent.stage <- 0 set_rule_bridge_coventry_sound( 1 /* forbid */ ) resume_game() //gui.open_info_win() } function resume_game() { // init factory accessors fish_cannery_fish_slot = factory_x(1600, 21).input.fish coventry_supermarket_input = factory_x(1621, 8).input london_supermarket_input = factory_x(740,79).input salisbury_shoppingmall_input = factory_x(11,58).input textile_factory_output = factory_x(1609,9).output textile_factory_textile_slot = factory_x(1609,9).output.textile steel_factory_output = factory_x(850,56).output steel_factory_steel_slot = factory_x(850,56).output.Stahl steel_factory_input = factory_x(850,56).input /* foreach( name,slot in textile_factory_output) { print("outname:" + name+":") print("storage:"+slot.storage[0]+":") } */ foreach( name,slot in steel_factory_output) { print("outname:" + name+":") print("storage:"+slot.storage[0]+":") print("delivered:"+slot.delivered[0]) } print("Stoffe im Lager:"+textile_factory_textile_slot.storage[0]) // print("Fischname"+fish_cannery_fish_slot[0]) if ( !("stage" in persistent)) { persistent.stage <- 0 } //print(factory_x(1600,21).input.fish.storage[0]) //print("asd") //player <- {} //player= player_x(0) //print("player.cash 0 "+player.cash[0]) //print("player.cash 1 "+player.cash[1]) } // no bridge across any of these tiles local coventry_sound = [ {x=1536, y=127}, {x=1536, y=97}, {x=1548, y=97}, {x=1548, y=47}, {x=1585, y=47}, {x=1585, y=20}, {x=1598, y=20}, {x=1598, y=0} ] local err_no_bridge = "The fish industry does not allow to interfere with its enterprises in Coventry sound." function set_rule_bridge_coventry_sound(forbid) { if(forbid =1) for(local i=0; i