PKa8META-INF/MANIFEST.MFMLK-. K-*ϳR03MuI,.RHIK,JΨ+.*L 3L^.^.PK#rDHPK 5yXc.project SummerSell org.eclipse.jdt.core.javabuilder org.eclipse.jdt.core.javanature PK a81yy"de/monarchy/summersell/Drink.class1.de/monarchy/summersell/Drinkjava/lang/ObjectmischeDtasteIpreis(DID)VCode  ()V"java/lang/IllegalArgumentExceptionbad mix!  (Ljava/lang/String;)V   bad taste!   bad price!  LineNumberTableLocalVariableTablethisLde/monarchy/summersell/Drink;mixpricegetMix()DgetTaste()IgetPreis SourceFile Drink.java!   R* ' ' Y*' d Y* Y*!.     + 5:AKQ"*R#$R%RR&'( /*!" #$)* /*!" #$+( /*!" #$,-PK 5K!de/monarchy/summersell/Drink.javapackage de.monarchy.summersell; public class Drink { private double mische; private int taste; private double preis; public Drink(double mix, int taste,double price){ if(mix<0.0 || mix>1.0) throw new IllegalArgumentException("bad mix!"); mische = mix; if(taste<-100 || taste>100) throw new IllegalArgumentException("bad taste!"); this.taste = taste; if(price<0) throw new IllegalArgumentException("bad price!"); preis = price; } public double getMix(){ return mische; } public int getTaste(){ return taste; } public double getPreis(){ return preis; } } PK a8Z\&&#de/monarchy/summersell/Person.class1ide/monarchy/summersell/Personjava/lang/ObjecttasteI miserliness experienceD outdoorrate(IID)VCode  ()V   "java/lang/IllegalArgumentException bad taste!  (Ljava/lang/String;)V too stingy! bad quota!   ! # LineNumberTableLocalVariableTablethisLde/monarchy/summersell/Person; geschmackgeizquote comesAround()Z .0/java/lang/Math 12random()D@getterlikestaydrink!(Lde/monarchy/summersell/Drink;)V ;=<de/monarchy/summersell/Drink >2getPreis ;@ A2getMix@Y .E FGsqrt(D)D ;K LMgetTaste()I .O PQabs(I)I@$??glasLde/monarchy/summersell/Drink;preismixmispricepreisexpmixexpexp getExperience setExperience(D)Vebad experiencedelay SourceFile Person.java!    Y** d Y d Y) ) Y**) *"$2    ) 3?INSX%*Y&'Y(Y)Y* +, .-H*cJ-3k9'* )$ %*.&'*5  #6 7 89 +:I+?9B*"gBoDD9kD9(go9  HH9  9 3kkg9 +J6*6dN6DRDog9HH9T Tk VkcVkck9*YTk*Yc$F  *!3"A#K$X%^&d'n()*+,-%p &'XYZ  [  \ *] 3^ Xg_ ^a(d[@` a2 /*$0% &'bc ^'H ' Yd*'$4567%&'` LM v.-Rkd<*`*`dd*`$: ;<=$>'@%.&' #fghPK 5, A"de/monarchy/summersell/Person.javapackage de.monarchy.summersell; public class Person { private int taste; private int miserliness; private double experience=0; private final double outdoorrate; public Person(int geschmack, int geiz, double quote){ if(geschmack<-100 || geschmack>100) throw new IllegalArgumentException("bad taste!"); if(geiz<0 || geiz>100) throw new IllegalArgumentException("too stingy!"); if(quote<=0 || quote>1) throw new IllegalArgumentException("bad quota!"); taste = geschmack; outdoorrate = quote; miserliness = geiz; } public boolean comesAround(){ double getter = Math.random(); double like = 1.0 + experience; double stay = Math.random() * 2; return (getter1)preisexp = 1.0; double mixexp = 2.0 * (mix*mix) - 1.0; int geschmack = glas.getTaste(); int taste = this.taste; geschmack = Math.abs(geschmack-taste); double exp = 1.0 - (Math.sqrt(geschmack) / Math.sqrt(10)); if(exp<-1.0)exp=-1.0; exp = 0.5*(preisexp*0.5 + mixexp*0.25 + exp*0.25); experience *= .5; experience += exp; } public double getExperience(){ return experience; } public void setExperience(double exp){ if(exp<-1 || exp>1) throw new IllegalArgumentException("bad experience"); experience = exp; } public int getTaste(){ int delay = (int)(Math.random()*10)-5; if(taste+delay<-100) return -100; else if(taste+delay>100) return 100; else return taste+delay; } } PK a8}""#de/monarchy/summersell/Ferien.class1de/monarchy/summersell/Ferienjava/util/Observable SINENPREISI ConstantValue ZUCKERPREISdtagkundenLjava/util/Vector; Signature3Ljava/util/Vector; taschengeldtischLde/monarchy/summersell/Bar;()VCode      de/monarchy/summersell/Bar   $(Lde/monarchy/summersell/Ferien;DD)V " $java/util/Vector # ' ) *+ neuerKunde!()Lde/monarchy/summersell/Person; #- ./add(Ljava/lang/Object;)ZLineNumberTableLocalVariableTablethisLde/monarchy/summersell/Ferien;igetAlleBekannten()I #8 96sizegetTaggetBar()Lde/monarchy/summersell/Bar;getGeld getExperience()D #A BCiterator()Ljava/util/Iterator; EGFjava/util/Iterator HInext()Ljava/lang/Object;Kde/monarchy/summersell/Person JM >? EO PQhasNext()ZitLjava/util/Iterator;expDpLde/monarchy/summersell/Person;LocalVariableTypeTable5Ljava/util/Iterator;setGeld(I)ZbuchungneuerTag _ `vielleichtPassiert M cedjava/lang/Math f?random #h ijremove(I)Ljava/lang/Object; l mresetKundenCounter o p rotateSinenneuewegx ranAnDenSpeck Jv wQ comesAround Jy z6getTaste | }~verkauf!(I)Lde/monarchy/summersell/Drink; J drink!(Lde/monarchy/summersell/Drink;)V  ?getPreis@Y  Z[  6 getAlleSinen   gluecksBote  6 getZucker   gluecksZucker@i J (IID)V geschmackgeizquote@.@Y@java/lang/StringBuilderlSo ein Glück... Gerade als dir die Apfelsinen ausgehen,verliert ein Laster vor deinem Stand eine Kiste mit (Ljava/lang/String;)V append(I)Ljava/lang/StringBuilder;Apfelsinen von gestern. -(Ljava/lang/String;)Ljava/lang/StringBuilder; toString()Ljava/lang/String;   neueSinen(I)V@I_Papa hat seinen Ein-Euro-Job hingeschmissen. Pech für ihn, Glück für dich, denn er kann dir  Apfelsinen vorbeibringen. java/lang/String valueOf&(Ljava/lang/Object;)Ljava/lang/String;/ Leider kannst du nicht zahlen. Papa schallert 9dir zwar eine, nimmt dich aber wenigstens mit nach Hause.@IDie 80 Cent Restguthaben auf deinem Handy zahlen sich aus. Mama ist gerade mit ihrem Freier fertig und bringt dir eine Ladung Apfelsinen vorbei. Als echte Geschäftsfrau berechnet sie dir natürlich die Anfahrt.  =6Die Buchhaltung macht dir schwere Vorwürfe wegen deiner schlimmen Fehlkalkulation. Dass du keine Apfelsinen mehr hast, hat wenigstens den Vorteil, dass du rechtzeitig zu Pokémon zu Hause bist.   setChanged  notifyObservers(Ljava/lang/Object;)VglueckmessageLjava/lang/String;fruits1fruits23 fruits4567@McDonald's ist superlecker. Außerdem retten dir die Zuckerpäckchen, die du dort säckeweise mitgehen lassen hast, jetzt die finanzielle Existenz. Zumindest für heute.   neuerZuckerBöser Fauxpas, dir ist der Zucker ausgegangen. Leider sind deine Kunden nicht von deiner Idee überzeugt, als Ersatzstoff Sand in den Saft zu füllen. Immerhin verpasst du heute nicht das Urteil bei Richterin Salesch.@@>Und da sag noch einer, Aliens gibt es nicht... Du bist jedenfalls von einer Gruppe entführt worden, die ziemlich trottelig ist. Es dauert zwar etwas, aber nach dem Aufstehen wird dir doch bald klar, dass du den selben Tag ein zweites Mal erlebst. Die Jungs konnten sich wohl nur merken, WO sie dich aufgegabelt haben.Ja, wo gibts denn sowas? Da plagt einen ja das schlechte Gewissen. Irgendwer muss mit einem 100er statt einem 5er bezahlt haben. Du lachst in deinen Gedanken über alle, die das richtigstellen würden und steckst die 95 Taler Extragewinn ein.Du entdeckst eine ganze Reihe von Nazi-Aufklebern auf dem Weg nach Hause. Gut, dass du immer deinen Edding dabei hast und über unglaubliches Zeichentalent verfügst. Auch so kommt man an neue Kunden. Dein Bekanntheitsgrad dürfte sich jedenfalls erhöht haben.@SWHeute ist doch gar nicht dein Geburtstag... Egal, als du nach Hause kommst, findest du  Orangen auf dem Tisch. #Du freust dich und steckst sie ein.Ja ist es denn die Möglichkeit?! Die heiße Blonde aus der Parallelklasse hat dich gefragt, ob ihr zusammen ins Kino geht... Und dass sie zahlt, ist der Oberhammer. Nur Popcorn und Cola kaufst du. Das läppert sich zwar, aber immerhin durftest du ihren Fahrradhelm halten!Diese Wichser! Dein Bonanza-Rad war den Rennrädern der Jugendgang "Helle Angeln" nicht gewachsen. Vor ihren Fäusten kapitulierend rückst du dein gesamtes Barvermögen raus. Oder fast alles. Wenn sie die Unterhose nicht kontrollieren wollen...Wo kommt die denn her? Als du deine Tasche ausleerst, fälltdir eine unbekannte Packung Zucker in die Hände. Natürlich sagst du gleich dem Lageristen und der Buchhaltung Bescheid.Was soll das denn jetzt??? Vaddern will unbedingt heute die Garage entrümpeln. Das bedeutet, dass du einen Tag deiner wertvollen Zeit verlierst. Immerhin steckt er dir 5 Euro zu...  ]6Das ist doch kein Zucker in der Packung... Da hat dein großer Bruder seinen "Schnee" wohl in deinem Lagerraum deponiert. DeineKunden dürften den Saft heute um einiges belebender gefunden haben als sonst...? J    setExperience(D)V fruits245raubdrogisucht SourceFile Ferien.java!     D*** ĵ*Y*!*#Y%&<*&*(,Wd0&  ).:C1D23+4562*&701 23:6/*0!1 23;</*!0%1 23=6/*0)1 23>?6*&@LI+DJ:(LcI+N(*&7oI(0"-. / 01 /)3441*623.RS ,TUVWX .RYZ[W*`*Y`0: ; =>123\]6>*^*acH'2*&7'k*&7d>6*&*(,W'?*&7*&7'kd>6b*&7k6*&gW*!k*!n*Y`Z0BEF GH%I+J7I@LFMZN`OoPyNTUV1H23 TU%q(4Z(r]%4o stQy*&@LR+DJM,u#,*!,x{**!kW*!**!*+N*! *!02 [\ ]^_+`<bGcKdVeZ\wi1 y23qRSEVWX qRY*+x$bkdd<bk=bJJY)0s tuv1*$23  Ubk<M+kkʸbk2`>YM*6**!*bk`6Y¶M*hhY,ķʶ̶MK*!?bk2`6M*h`h**hW*!M**,ٱ0"z { |8~DMQVZ`goux 1H23  D4`sR,=bk<M#M*!ܶM**,ٱ0* #-037<1 =23 4 1` bk<M S*l"L\fM*Yd**,٧oM*%W**,٧XMbk>6*&*(,W**,٧%bk2`6YM*!**,٧M**DW **tW**,٧M*d66*hW**,٧M*!**,٧uM*W**,*WXM*&@:5DJ:LLc99 N**,ٱ0E `cmqvy|#',/2<ADMQVY]gkpsw    $1f 23  'q41<HRS&WUX HRYPK ܘ5\$$"de/monarchy/summersell/Ferien.javapackage de.monarchy.summersell; import java.util.Iterator; import java.util.Observable; import java.util.Vector; public class Ferien extends Observable{ public static final int SINENPREIS = 20; public static final int ZUCKERPREIS = 100; private int tag=1; private Vector kunden; private int taschengeld; private Bar tisch; public Ferien(){ taschengeld = 2500; tisch = new Bar(this,1.,0.); kunden = new Vector(); for(int i=0;i<100;i++){ kunden.add(neuerKunde()); } } public int getAlleBekannten(){ return kunden.size(); } public int getTag(){ return tag; } public Bar getBar(){ return tisch; } public int getGeld(){ return taschengeld; } public double getExperience(){ Iterator it = kunden.iterator(); double exp=0; while(it.hasNext()){ Person p = it.next(); exp+= p.getExperience(); } exp = (exp / kunden.size()); return exp; } public boolean setGeld(int buchung){ if(taschengeld+buchung<0) return false; else taschengeld += buchung; return true; } public int neuerTag(){ vielleichtPassiert(); double exp=getExperience()+1.0; if(exp>1.0){ int neue = (int)(kunden.size() * exp)-kunden.size(); for(int i=0;i it = kunden.iterator(); while(it.hasNext() && tisch.getAlleSinen()>0 && tisch.getZucker()>0){ Person p = it.next(); if(p.comesAround()){ p.drink(tisch.verkauf(p.getTaste())); setGeld((int)(tisch.getPreis()*100)); } if(tisch.getAlleSinen()<1) gluecksBote(); if(tisch.getZucker()<1) gluecksZucker(); } return true; } private Person neuerKunde(){ int geschmack = ((int)(Math.random()*200))-100; int geiz = ((int)(Math.random()*100)); double quote = Math.random(); return new Person(geschmack, geiz, quote); } private void gluecksBote(){ int glueck = (int)(Math.random()*15); String message=""; switch(glueck){ case 1: int fruits1 = (int)(Math.random()*101)+50; message = "So ein Glck...\nGerade als dir die Apfelsinen ausgehen," + "verliert ein Laster vor\ndeinem Stand eine Kiste mit " + fruits1 + "Apfelsinen von gestern."; int x = tag; tag=1001; tisch.neueSinen(fruits1); tag = x; break; case 2:case 3: int fruits23 = (int)(Math.random()*50)+25; message = "Papa hat seinen Ein-Euro-Job hingeschmissen.\nPech fr ihn, " + "Glck fr dich, denn er kann dir " + fruits23 + " Apfelsinen " + "vorbeibringen."; if(!setGeld(-1 * fruits23 * SINENPREIS)) message = message + "\nLeider kannst du nicht zahlen. Papa schallert " + "dir zwar eine, nimmt dich aber wenigstens mit nach Hause."; else tisch.neueSinen(fruits23); break; case 4:case 5:case 6:case 7: int fruits4567 = (int)(Math.random()*51)+50; message = "Die 80 Cent Restguthaben auf deinem Handy zahlen sich aus.\n" + "Mama ist gerade mit ihrem Freier fertig und bringt dir eine Ladung " + "Apfelsinen vorbei.\nAls echte Geschftsfrau berechnet sie dir " + "natrlich die Anfahrt."; if(!setGeld(-1 * (fruits4567 * SINENPREIS + 150))) setGeld(-1*getGeld()); tisch.neueSinen(fruits4567); break; default: message = "Die Buchhaltung macht dir schwere Vorwrfe wegen deiner " + "schlimmen Fehlkalkulation.\nDass du keine Apfelsinen mehr hast, hat " + "wenigstens den Vorteil,\ndass du rechtzeitig zu Pokmon zu Hause " + "bist."; } setChanged(); notifyObservers(message); } private void gluecksZucker(){ int glueck = (int)(Math.random()*2); String message=""; switch(glueck){ case 0: message = "McDonald's ist superlecker.\nAuerdem retten dir die " + "Zuckerpckchen, die du dort sckeweise mitgehen lassen hast,\njetzt " + "die finanzielle Existenz. Zumindest fr heute."; tisch.neuerZucker(1500); break; default: message = "Bser Fauxpas, dir ist der Zucker ausgegangen.\nLeider sind " + "deine Kunden nicht von deiner Idee berzeugt, als Ersatzstoff Sand " + "in den Saft zu fllen.\nImmerhin verpasst du heute nicht das Urteil " + "bei Richterin Salesch."; } setChanged(); notifyObservers(message); } public void vielleichtPassiert(){ int glueck = (int)(Math.random()*1000); String message=""; switch(glueck){ case 0: message = "Und da sag noch einer, Aliens gibt es nicht...\nDu bist " + "jedenfalls von einer Gruppe entfhrt worden, die ziemlich trottelig " + "ist.\nEs dauert zwar etwas, aber nach dem Aufstehen wird dir doch" + " bald klar, dass du den selben Tag ein zweites Mal erlebst.\nDie " + "Jungs konnten sich wohl nur merken, WO sie dich aufgegabelt haben."; tag--; setChanged(); notifyObservers(message); break; case 42: message = "Ja, wo gibts denn sowas? Da plagt einen ja das schlechte " + "Gewissen.\nIrgendwer muss mit einem 100er statt einem 5er bezahlt " + "haben.\nDu lachst in deinen Gedanken ber alle, die das richtigstellen" + " wrden und steckst die 95 Taler Extragewinn ein."; setGeld(9500); setChanged(); notifyObservers(message); break; case 196: message = "Du entdeckst eine ganze Reihe von Nazi-Aufklebern auf dem Weg " + "nach Hause.\nGut, dass du immer deinen Edding dabei hast und ber " + "unglaubliches Zeichentalent verfgst.\nAuch so kommt man an neue " + "Kunden. Dein Bekanntheitsgrad drfte sich jedenfalls erhht haben."; int neue = (int)(Math.random() * 76); for(int i=0;i=700) setGeld(-700); else setGeld(-getGeld()); setChanged(); notifyObservers(message); break; case 515: message = "Diese Wichser! Dein Bonanza-Rad war den Rennrdern der " + "Jugendgang \"Helle Angeln\" nicht gewachsen.\nVor ihren Fusten " + "kapitulierend rckst du dein gesamtes Barvermgen raus.\nOder fast " + "alles. Wenn sie die Unterhose nicht kontrollieren wollen..."; int raub = getGeld() - 1000; if(raub<0) raub=0; setGeld(-1*raub); setChanged(); notifyObservers(message); break; case 704: message = "Wo kommt die denn her?\nAls du deine Tasche ausleerst, fllt" + "dir eine unbekannte Packung Zucker in die Hnde.\nNatrlich " + "sagst du gleich dem Lageristen und der Buchhaltung Bescheid."; tisch.neuerZucker(1000); setChanged(); notifyObservers(message); break; case 860: message = "Was soll das denn jetzt???\nVaddern will unbedingt heute die " + "Garage entrmpeln.\nDas bedeutet, dass du einen Tag deiner " + "wertvollen Zeit verlierst. Immerhin steckt er dir 5 Euro zu..."; setGeld(500); setChanged(); notifyObservers(message); neuerTag(); break; case 912: message = "Das ist doch kein Zucker in der Packung...\nDa hat dein groer" + " Bruder seinen \"Schnee\" wohl in deinem Lagerraum deponiert.\nDeine" + "Kunden drften den Saft heute um einiges belebender gefunden haben " + "als sonst..."; Iterator it = kunden.iterator(); while(it.hasNext()){ Person drogi= it.next(); if(drogi.getExperience()!=0.0){ double sucht = drogi.getExperience() + 0.25; if(sucht>1.0) sucht = 1.0; drogi.setExperience(sucht); } } setChanged(); notifyObservers(message); break; default: } } } PK a8kk)de/monarchy/summersell/SummerSell$1.class1U#de/monarchy/summersell/SummerSell$1java/lang/Objectjava/awt/event/ActionListenerthis$0#Lde/monarchy/summersell/SummerSell;&(Lde/monarchy/summersell/SummerSell;)VCode    ()VLineNumberTableLocalVariableTablethis%Lde/monarchy/summersell/SummerSell$1;actionPerformed(Ljava/awt/event/ActionEvent;)V !de/monarchy/summersell/SummerSell ferienLde/monarchy/summersell/Ferien;  de/monarchy/summersell/Ferien !"getBar()Lde/monarchy/summersell/Bar; $ %&preissLjavax/swing/JSlider; (*)javax/swing/JSlider +,getValue()I@Y 021de/monarchy/summersell/Bar 34setPreis(D)V 6 7&mixers 09 :4setMix < => ranAnDenSpeck()Z 0@ A, getAlleKunden C DEaccess$0'(Lde/monarchy/summersell/SummerSell;I)V G H,neuerTag J K access$1 M N revalidateAllarg0Ljava/awt/event/ActionEvent; SourceFileSummerSell.javaEnclosingMethod InnerClasses0  8 *+ *    u* * #'-o/* * 5'-o8* ;W* * ?B* F * I* L"8CWfmtuuOPQRST PK a8 )de/monarchy/summersell/SummerSell$2.class1F#de/monarchy/summersell/SummerSell$2java/lang/Object javax/swing/event/ChangeListenerthis$0#Lde/monarchy/summersell/SummerSell;&(Lde/monarchy/summersell/SummerSell;)VCode    ()VLineNumberTableLocalVariableTablethis%Lde/monarchy/summersell/SummerSell$2; stateChanged"(Ljavax/swing/event/ChangeEvent;)V !de/monarchy/summersell/SummerSell tittelaLjavax/swing/JLabel;java/lang/StringBuilder  " #(Ljava/lang/String;)V % &'apfelsLjavax/swing/JSlider; )+*javax/swing/JSlider ,-getValue()I / 01append(I)Ljava/lang/StringBuilder;37 frische Apfelsinen? Nur 20 Cent pro Stück! 5 06-(Ljava/lang/String;)Ljava/lang/StringBuilder; 8 9:toString()Ljava/lang/String; <>=javax/swing/JLabel ?#setTextarg0Ljavax/swing/event/ChangeEvent; SourceFileSummerSell.javaEnclosingMethod InnerClasses0  8 *+ * )   a)* Y!* $(.247; +(,))@ABCDE PK a8.)de/monarchy/summersell/SummerSell$3.class1B#de/monarchy/summersell/SummerSell$3java/lang/Objectjava/awt/event/ActionListenerthis$0#Lde/monarchy/summersell/SummerSell;&(Lde/monarchy/summersell/SummerSell;)VCode    ()VLineNumberTableLocalVariableTablethis%Lde/monarchy/summersell/SummerSell$3;actionPerformed(Ljava/awt/event/ActionEvent;)V !de/monarchy/summersell/SummerSell apfelsLjavax/swing/JSlider;  javax/swing/JSlider !"getValue()I $ %&ferienLde/monarchy/summersell/Ferien; (*)de/monarchy/summersell/Ferien +,setGeld(I)Z (. /0getBar()Lde/monarchy/summersell/Bar; 243de/monarchy/summersell/Bar 56 neueSinen(I)V 8 9 revalidatearg0Ljava/awt/event/ActionEvent;kostetI SourceFileSummerSell.javaEnclosingMethod InnerClasses0  8 *+ * H   =* h=* #h'!* #-* 1* 7JKL5M<O ==:;/<=>?@A PK a8k!)de/monarchy/summersell/SummerSell$4.class1F#de/monarchy/summersell/SummerSell$4java/lang/Object javax/swing/event/ChangeListenerthis$0#Lde/monarchy/summersell/SummerSell;&(Lde/monarchy/summersell/SummerSell;)VCode    ()VLineNumberTableLocalVariableTablethis%Lde/monarchy/summersell/SummerSell$4; stateChanged"(Ljavax/swing/event/ChangeEvent;)V !de/monarchy/summersell/SummerSell tittelzLjavax/swing/JLabel;java/lang/StringBuilder  " #(Ljava/lang/String;)V % &'zuckersLjavax/swing/JSlider; )+*javax/swing/JSlider ,-getValue()I / 01append(I)Ljava/lang/StringBuilder;3- Kilo Zucker? Nur 1 Euro pro Kilo! 5 06-(Ljava/lang/String;)Ljava/lang/StringBuilder; 8 9:toString()Ljava/lang/String; <>=javax/swing/JLabel ?#setTextarg0Ljavax/swing/event/ChangeEvent; SourceFileSummerSell.javaEnclosingMethod InnerClasses0  8 *+ * q   a)* Y!* $(.247; s(t))@ABCDE PK a8\)de/monarchy/summersell/SummerSell$5.class1B#de/monarchy/summersell/SummerSell$5java/lang/Objectjava/awt/event/ActionListenerthis$0#Lde/monarchy/summersell/SummerSell;&(Lde/monarchy/summersell/SummerSell;)VCode    ()VLineNumberTableLocalVariableTablethis%Lde/monarchy/summersell/SummerSell$5;actionPerformed(Ljava/awt/event/ActionEvent;)V !de/monarchy/summersell/SummerSell zuckersLjavax/swing/JSlider;  javax/swing/JSlider !"getValue()I $ %&ferienLde/monarchy/summersell/Ferien; (*)de/monarchy/summersell/Ferien +,setGeld(I)Z (. /0getBar()Lde/monarchy/summersell/Bar; 243de/monarchy/summersell/Bar 56 neuerZucker(I)V 8 9 revalidatearg0Ljava/awt/event/ActionEvent;kostetI SourceFileSummerSell.javaEnclosingMethod InnerClasses0  8 *+ *    A* dh=* #h'%* #-* h1* 79@ AA:;3<=>?@A PK a86)de/monarchy/summersell/SummerSell$6.class1F#de/monarchy/summersell/SummerSell$6java/lang/Object javax/swing/event/ChangeListenerthis$0#Lde/monarchy/summersell/SummerSell;&(Lde/monarchy/summersell/SummerSell;)VCode    ()VLineNumberTableLocalVariableTablethis%Lde/monarchy/summersell/SummerSell$6; stateChanged"(Ljavax/swing/event/ChangeEvent;)V !de/monarchy/summersell/SummerSell tittelmLjavax/swing/JLabel;java/lang/StringBuilder Echte " #(Ljava/lang/String;)V % &'mixersLjavax/swing/JSlider; )+*javax/swing/JSlider ,-getValue()I / 01append(I)Ljava/lang/StringBuilder;3% Saft ins Glas! 5 06-(Ljava/lang/String;)Ljava/lang/StringBuilder; 8 9:toString()Ljava/lang/String; <>=javax/swing/JLabel ?#setTextarg0Ljavax/swing/event/ChangeEvent; SourceFileSummerSell.javaEnclosingMethod InnerClasses0  8 *+ *    a)* Y!* $(.247; ())@ABCDE PK a8|y)de/monarchy/summersell/SummerSell$7.class1G#de/monarchy/summersell/SummerSell$7java/lang/Object javax/swing/event/ChangeListenerthis$0#Lde/monarchy/summersell/SummerSell;&(Lde/monarchy/summersell/SummerSell;)VCode    ()VLineNumberTableLocalVariableTablethis%Lde/monarchy/summersell/SummerSell$7; stateChanged"(Ljavax/swing/event/ChangeEvent;)V !de/monarchy/summersell/SummerSell tittelpLjavax/swing/JLabel;java/lang/StringBuilder  Ich verkaufe mich für " #(Ljava/lang/String;)V % &'preissLjavax/swing/JSlider; )+*javax/swing/JSlider ,-getValue()I / 01access$28(Lde/monarchy/summersell/SummerSell;I)Ljava/lang/String; 3 45append-(Ljava/lang/String;)Ljava/lang/StringBuilder;7 ! 9 :;toString()Ljava/lang/String; =?>javax/swing/JLabel @#setTextarg0Ljavax/swing/event/ChangeEvent; SourceFileSummerSell.javaEnclosingMethod InnerClasses0  8 *+ *    h0* Y!* * $(.2628< /00ABCDEF PK a8A<88'de/monarchy/summersell/SummerSell.class1=!de/monarchy/summersell/SummerSelljava/applet/Appletjava/util/ObserverserialVersionUIDJ ConstantValue ferienLde/monarchy/summersell/Ferien;dayLjavax/swing/JLabel;moneymoneyl alleapfel allezuckerbedienerbedientgbedientatittelneuamittelaaltatittelatittelztittelmtittelpapfelsLjavax/swing/JSlider;zuckersmixerspreiss experienceLjavax/swing/JProgressBar; verkaufenLjavax/swing/JButton;bedientI()VCode . *+0javax/swing/JLabel /. 3  5 7de/monarchy/summersell/Ferien 6. : 6< =>getBar()Lde/monarchy/summersell/Bar; @BAde/monarchy/summersell/Bar CD getAlleKunden()I F () 6H IJ addObserver(Ljava/util/Observer;)VLjava/awt/GridBagLayout K. KO PQ columnWidths[I KS TQ rowHeightsVjava/awt/Color UY *Z(I)V \ ]^ setBackground(Ljava/awt/Color;)V ` ab setLayout(Ljava/awt/LayoutManager;)Vdjava/awt/Dimension cf *g(II)V i jksetPreferredSize(Ljava/awt/Dimension;)Vmjava/awt/GridBagConstraints l. lp q)gridx ls t)gridy lv w) gridheight ly z)fill|java/lang/StringBuilder~ Tag: { *(Ljava/lang/String;)V 6 DgetTag { append(I)Ljava/lang/StringBuilder; { toString()Ljava/lang/String; /   / ZsetVerticalAlignment /  setOpaque(Z)V /\ / getFont()Ljava/awt/Font;  java/awt/Font  getFamilyserif *(Ljava/lang/String;II)V / setFont(Ljava/awt/Font;)V  add*(Ljava/awt/Component;)Ljava/awt/Component; K setConstraints4(Ljava/awt/Component;Ljava/awt/GridBagConstraints;)VTaschengeld   / ZsetHorizontalAlignment sans-serif 6 DgetGeld   makeMoney(I)Ljava/lang/String;   monospace#Bediente Kunden   Gestern:  Gesamt:  javax/swing/JProgressBar *(III)V  $% 6  getExperience()D@Y ZsetValue setBorderPainted Zufriedenheit  setString setStringPainted U \javax/swing/JButtonGeld verdienen!  &'#de/monarchy/summersell/SummerSell$1 *&(Lde/monarchy/summersell/SummerSell;)V addActionListener"(Ljava/awt/event/ActionListener;)V3Kauf es - Hast du, brauchst du!   l ) gridwidthOrangen: @  D getAlleSinen  { -(Ljava/lang/String;)Ljava/lang/StringBuilder;  frischvon gesternalt {. @ getSinen(I)I   !  # %javax/swing/JSlider $ (  $ $\ $ $- .ZsetMajorTickSpacing $0 1ZsetMinorTickSpacing $3 4setPaintLabels $6 7 setPaintTicks9#de/monarchy/summersell/SummerSell$2 8 $< =>addChangeListener%(Ljavax/swing/event/ChangeListener;)V@ $B CDgetValueE7 frische Apfelsinen? Nur 20 Cent pro Stück!GKauf es!I#de/monarchy/summersell/SummerSell$3 HLZucker: @N OD getZuckerQ g S  U ! W#de/monarchy/summersell/SummerSell$4 VZ- Kilo Zucker? Nur 1 Euro pro Kilo!\#de/monarchy/summersell/SummerSell$5 [_5Misch es - Willst du, kriegst du! a " c#de/monarchy/summersell/SummerSell$6 bfEchte h% Saft ins Glas! j  l # n#de/monarchy/summersell/SummerSell$7 mq Ich verkaufe mich für s ! u LineNumberTableLocalVariableTablethis#Lde/monarchy/summersell/SummerSell;gblLjava/awt/GridBagLayout;gbc1Ljava/awt/GridBagConstraints;muhLjava/lang/String;gbc2moregbc3gbc4gbc5gbc6gbc7gbc8gbc10gbc9gbc11apfelkgbc19zuckerk revalidate / setText $ revalidateAll  + @ getMix @ getPreisendGame(Du hast drei Wochen lang Saft verkauft. java/lang/String valueOf&(Ljava/lang/Object;)Ljava/lang/String;In dieser Zeit hast du  Kunden betreut. Du hast  verdient. Das reicht immerhin für   getReward. 6 DgetAlleBekannten Menschen kennen deinen Laden. Das ist ein Zuwachs von  Prozent. 1Gäbe es einen Highscore, wäre er unermesslich. + Und jetzt den ganzen Mist noch mal besser?Die Ferien sind vorbei! javax/swing/JOptionPane showConfirmDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)I   setEnabled java/lang/System Zexit  +restartAllThisarg1iDdueinen Flachbildfernseher.einen neuen Computer.ein super Fahrrad.#eine Playstation plus Ballerspiele.eine nigelnagelneue XBox#alle Staffeln der Sopranos auf DVD.zwei Wochen Ferienlagerein sexy Fußballtrikot in XXL.ein neues Computerspiel.6einmal Kino mit dem Mädchen, das nichts von dir will.eine Kiste Apfelsinen. gar nichts.am  + java/lang/Integer  Dlength000   substring(II)Ljava/lang/String;  , €dmvnmain([Ljava/lang/String;)Vjavax/swing/JFrame SummerSell  .  ZsetDefaultCloseOperation  setContentPane(Ljava/awt/Container;)V  +pack    setVisibleargs[Ljava/lang/String;openerLjavax/swing/JFrame;gamestart update+(Ljava/util/Observable;Ljava/lang/Object;)V+Ereignis - ./showMessageDialog<(Ljava/awt/Component;Ljava/lang/Object;Ljava/lang/String;I)Varg0Ljava/util/Observable;Ljava/lang/Object;access$0'(Lde/monarchy/summersell/SummerSell;I)Vaccess$1 7 +access$28(Lde/monarchy/summersell/SummerSell;I)Ljava/lang/String; SourceFileSummerSell.java InnerClasses!    ! " # $%&'() *+,*-*/Y12*/Y14*6Y89**9;?E*9*GKYML+ YOYOYOYON+ YOYOYOYOYOYOYOYOYOY OY OY OY OY OYOYOYOYOYOYOYOYOYOYOR*UYWX[*+_*cYehlYnM,o,r,u,x*/Y{Y}*9***UYX*N*Y**W+*,*/Y****UYX*Y lYn:orx**W+**96*/Y*****ûUYX*ûYlYn:orx**öW+**/YǷ****ɻUYX*ɻY lYn:orx**ɶW+**/Y{Y˷*9;?*Ed****ͻUYX*ͻY lYn:orx**ͶW+**/Y{YϷ*9;?****ѻUYX*ѻY lYn:  o r x**ѶW+* *Ydյ**9k****ػUY*lYn:  o r x u**ضW+* *Y*Y*lYn:  o r x u**W+* */Y****UYWX*YlYn:  o  r u x**W+* */Y{Y*9;  ****UYWX*Y lYn:  o  r x**W+* */Y****UYWX*Y lYn:  o r x**W+* */Y****UYWX*Y lYn:  o r x**W+* */Y****UYWX*Y lYn:  o r x**W+* */Y{Y*9;****UYWX*Y lYn:orx**W+**/Y{Y*9; * * * * UYWX* Y lYn:orx** W+* */Y{Y*9;"*"*"*"*"UYWX*"Y lYn:orx**"W+*"*$Y&'*')*'UYWX**'Y +*'},*'/*'2*'5*'8Y*:;lYn:orux**'W+*'*/Y{Y?*'AD2*2*2*2*2UYWX*2Y lYn:  o  r x**2W+*2 YF:HY*JlYn:  o r u*W+ */Y{YK*9;MPR*R*R*R*RUYWX*RY lYn:o rx**RW+*R*$Y&T*T)*TUYWX**TY +*T,*T/*T2*T5*TVY*X;lYn:o rux**TW+*T*/Y{Y?*TAY4*4*4*4*4UYWX*4Y lYn:  o   r x**4W+*4 YF:[Y*]lYn:  o  r u*W+ */Y^****UYWX*YlYn:  o  r u x**W+* *$Yd&`*`)*`UYWX**`Y +*`,*`/*`2*`5*`bY*d;lYn:orux**`W+*`*/Y{Ye*`Agi*i*i*i*iUYWX*iY lYn:  o  r x**iW+*i *$Y&k*k)*kUYWX**kY +*k2,*k /*k2*k5*kmY*o;lYn:orux**kW+*k*/Y{Yp**kArt*t*t*t*tUYWX*tY lYn:  o  r x**tW+*t vv%&'(%)3*;+C,b-.-/0145$6)7.839T:\;d<t=>?@CDEFGHIJKLMNQ#R4S<TDULV\WoXxY~Z[\]`abcdefghij kn<oDpLqTrdswtuvwxy|}~  )3CV^go%-5EXagmsy ",:BJRbu~(08@Pclrx~ @HPX h {        " + 5! E" M# ]$ p% y& ' ( ) . / 0 1 2 3 4 5 8 9 : ; < ,= ?> H? N@ TA ZB `C iD sG H Q R S T V W Z [ \ ] ^ _ ` &a ,b 2c 9d ?e Hf Ri aj ik yl m n o p q v w x y z { | }   & . 6 F Y b h n u {                 $ * 0 7 = C L V e m }              #+3;K^gmsz!'0:fnv~wxyCz{|}X~ }# )x _} } W} }  F}  } a v}  } } X' &} ='+,C*{Y}*9***9*ͻ{Y˷*9;?*Ed*ѻ{YϷ*9;?**9k*{Y*9;  *{Y*9;* {Y*9;*"{Y*9;*'*R{YK*9;MP*Tv6 /Tt    : B w Cxy+,g1**`*9;k*k*9;kv0w 1xy+,6L{Y+*9;?L{Y+**9 dL{Y+**9 dL{Y+*9L*9ddoI(kI(6{Y+L{Y+L{Y+L*+6 **ѱvJ,Y ! "# $(%,'1(5*w*6xy2w), |dl<ܤذڰܰްȤdP<( vb-. /012"3&4-51687<8B9F:L;P<V=Z>`?d@jAnBtCxDw|xy|)+,W*6Y89*9*G*E*vH IJKLw xy,vM,{Y,M,{Y,M,,dN,,d:{Y-M,v& QR S"T*U<VHWTXtYw4vxyv)q H. T"    ,}'YLYM++,++v` abcd!e&fw '!" #$%y&+,4*'v ijw xy(),L *,*,v o sw  xy 01 234,&*Ev#w5,%*6vw89,&*vPw:;<:8HV[bmPK ,a8_"1WW&de/monarchy/summersell/SummerSell.javapackage de.monarchy.summersell; import java.applet.Applet; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Observable; import java.util.Observer; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JProgressBar; import javax.swing.JSlider; import javax.swing.SwingConstants; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; public class SummerSell extends Applet implements Observer{ /** * */ private static final long serialVersionUID = 12L; public Ferien ferien; JLabel day,money,moneyl,alleapfel,allezucker,bediener,bedientg,bedienta; JLabel tittel, neua, mittela, alta, tittela, tittelz, tittelm, tittelp; JSlider apfels, zuckers, mixers, preiss; JProgressBar experience; JButton verkaufen; private int bedient; public SummerSell(){ tittela= new JLabel(); tittelz= new JLabel(); ferien = new Ferien(); bedient = ferien.getBar().getAlleKunden(); ferien.addObserver(this); GridBagLayout gbl = new GridBagLayout(); gbl.columnWidths = new int[] {145,145,145,145}; gbl.rowHeights = new int[] {20,20,20,20,20,20,20,20,20,20,20,20, 20,20,20,20,20,20,20,20,20,20,20,20}; setBackground(new Color(0xB7E5ED)); setLayout(gbl); setPreferredSize(new Dimension(640,500)); // Taganzeige GridBagConstraints gbc1 = new GridBagConstraints(); gbc1.gridx=0; gbc1.gridy=0; gbc1.gridheight=2; gbc1.fill = GridBagConstraints.BOTH; day = new JLabel(" Tag: "+ferien.getTag()); day.setVerticalAlignment(SwingConstants.TOP); day.setOpaque(true); day.setBackground(new Color(0xC1EDF3)); String muh = day.getFont().getFamily(); day.setFont(new Font("serif",Font.BOLD,24)); add(day); gbl.setConstraints(day,gbc1); // Geldanzeigeanzeige moneyl = new JLabel("Taschengeld"); moneyl.setVerticalAlignment(SwingConstants.BOTTOM); moneyl.setHorizontalAlignment(SwingConstants.CENTER); moneyl.setOpaque(true); moneyl.setBackground(new Color(0xC1EDF3)); moneyl.setFont(new Font("sans-serif",Font.BOLD,12)); GridBagConstraints gbc2 = new GridBagConstraints(); gbc2.gridx=0; gbc2.gridy=2; gbc2.fill = GridBagConstraints.BOTH; add(moneyl); gbl.setConstraints(moneyl,gbc2); //Anzeige Geld int more = (ferien.getGeld()); money = new JLabel(makeMoney(more)); money.setVerticalAlignment(SwingConstants.TOP); money.setHorizontalAlignment(SwingConstants.CENTER); money.setOpaque(true); money.setBackground(new Color(0xC1EDF3)); money.setFont(new Font("monospace",Font.BOLD,20)); GridBagConstraints gbc3 = new GridBagConstraints(); gbc3.gridx=0; gbc3.gridy=3; gbc3.fill = GridBagConstraints.BOTH; add(money); gbl.setConstraints(money,gbc3); // Anzeige "Bedient?" bediener = new JLabel("Bediente Kunden"); bediener.setVerticalAlignment(SwingConstants.BOTTOM); bediener.setHorizontalAlignment(SwingConstants.CENTER); bediener.setOpaque(true); bediener.setBackground(new Color(0xC1EDF3)); bediener.setFont(new Font("sans-serif",Font.BOLD,12)); GridBagConstraints gbc4 = new GridBagConstraints(); gbc4.gridx=0; gbc4.gridy=4; gbc4.fill = GridBagConstraints.BOTH; add(bediener); gbl.setConstraints(bediener,gbc4); // Anzeige gestern Bedient bedientg = new JLabel("Gestern: "+(ferien.getBar().getAlleKunden()-bedient)); bedientg.setVerticalAlignment(SwingConstants.CENTER); bedientg.setHorizontalAlignment(SwingConstants.CENTER); bedientg.setOpaque(true); bedientg.setBackground(new Color(0xC1EDF3)); bedientg.setFont(new Font("sans-serif",Font.BOLD,12)); GridBagConstraints gbc5 = new GridBagConstraints(); gbc5.gridx=0; gbc5.gridy=5; gbc5.fill = GridBagConstraints.BOTH; add(bedientg); gbl.setConstraints(bedientg,gbc5); // Anzeige insgesamt Bedient bedienta = new JLabel("Gesamt: "+(ferien.getBar().getAlleKunden())); bedienta.setVerticalAlignment(SwingConstants.CENTER); bedienta.setHorizontalAlignment(SwingConstants.CENTER); bedienta.setOpaque(true); bedienta.setBackground(new Color(0xC1EDF3)); bedienta.setFont(new Font("sans-serif",Font.BOLD,12)); GridBagConstraints gbc6 = new GridBagConstraints(); gbc6.gridx=0; gbc6.gridy=6; gbc6.fill = GridBagConstraints.BOTH; add(bedienta); gbl.setConstraints(bedienta,gbc6); // Anzeige Zufriedenheit experience = new JProgressBar(JProgressBar.VERTICAL,-100,100); experience.setValue((int)(ferien.getExperience()*100)); experience.setBorderPainted(true); experience.setString("Zufriedenheit"); experience.setStringPainted(true); experience.setBackground(new Color(0,0,0)); experience.setBorderPainted(true); GridBagConstraints gbc7 = new GridBagConstraints(); gbc7.gridx=0; gbc7.gridy=7; gbc7.fill = GridBagConstraints.BOTH; gbc7.gridheight=15; add(experience); gbl.setConstraints(experience,gbc7); // make it happen-Button verkaufen = new JButton("Geld verdienen!"); verkaufen.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { ferien.getBar().setPreis((preiss.getValue()/100.0)); ferien.getBar().setMix((mixers.getValue()/100.0)); ferien.ranAnDenSpeck(); bedient = ferien.getBar().getAlleKunden(); if(ferien.neuerTag()==22) endGame(); revalidateAll(); } }); GridBagConstraints gbc8 = new GridBagConstraints(); gbc8.gridx=0; gbc8.gridy=22; gbc8.fill = GridBagConstraints.BOTH; gbc8.gridheight=2; add(verkaufen); gbl.setConstraints(verkaufen,gbc8); //Lagertitel tittel = new JLabel("Kauf es - Hast du, brauchst du!"); tittel.setVerticalAlignment(SwingConstants.CENTER); tittel.setHorizontalAlignment(SwingConstants.CENTER); tittel.setOpaque(true); tittel.setBackground(new Color(0xB7E5ED)); tittel.setFont(new Font("sans-serif",Font.BOLD,20)); GridBagConstraints gbc10 = new GridBagConstraints(); gbc10.gridx=1; gbc10.gridwidth=3; gbc10.gridy=0; gbc10.gridheight=2; gbc10.fill = GridBagConstraints.BOTH; add(tittel); gbl.setConstraints(tittel,gbc10); // Apfelsinencounter alleapfel = new JLabel("Orangen: "+ferien.getBar().getAlleSinen()+""); alleapfel.setVerticalAlignment(SwingConstants.BOTTOM); alleapfel.setHorizontalAlignment(SwingConstants.CENTER); alleapfel.setOpaque(true); alleapfel.setBackground(new Color(0xB7E5ED)); alleapfel.setFont(new Font("sans-serif",Font.BOLD,12)); GridBagConstraints gbc9 = new GridBagConstraints(); gbc9.gridx=1; gbc9.gridwidth=3; gbc9.gridy=2; gbc9.fill = GridBagConstraints.BOTH; add(alleapfel); gbl.setConstraints(alleapfel,gbc9); // Titel tagesaktuelle Apfelsinen tittel= new JLabel("frisch"); tittel.setVerticalAlignment(SwingConstants.BOTTOM); tittel.setHorizontalAlignment(SwingConstants.CENTER); tittel.setOpaque(true); tittel.setBackground(new Color(0xB7E5ED)); tittel.setFont(new Font("sans-serif",Font.BOLD,12)); gbc10 = new GridBagConstraints(); gbc10.gridx=1; gbc10.gridy=3; gbc10.fill = GridBagConstraints.BOTH; add(tittel); gbl.setConstraints(tittel,gbc10); tittel= new JLabel("von gestern"); tittel.setVerticalAlignment(SwingConstants.BOTTOM); tittel.setHorizontalAlignment(SwingConstants.CENTER); tittel.setOpaque(true); tittel.setBackground(new Color(0xB7E5ED)); tittel.setFont(new Font("sans-serif",Font.BOLD,12)); gbc10 = new GridBagConstraints(); gbc10.gridx=2; gbc10.gridy=3; gbc10.fill = GridBagConstraints.BOTH; add(tittel); gbl.setConstraints(tittel,gbc10); tittel= new JLabel("alt"); tittel.setVerticalAlignment(SwingConstants.BOTTOM); tittel.setHorizontalAlignment(SwingConstants.CENTER); tittel.setOpaque(true); tittel.setBackground(new Color(0xB7E5ED)); tittel.setFont(new Font("sans-serif",Font.BOLD,12)); gbc10 = new GridBagConstraints(); gbc10.gridx=3; gbc10.gridy=3; gbc10.fill = GridBagConstraints.BOTH; add(tittel); gbl.setConstraints(tittel,gbc10); // neue Apfelsinen neua= new JLabel(""+ferien.getBar().getSinen(2)); neua.setVerticalAlignment(SwingConstants.BOTTOM); neua.setHorizontalAlignment(SwingConstants.CENTER); neua.setOpaque(true); neua.setBackground(new Color(0xB7E5ED)); neua.setFont(new Font("sans-serif",Font.BOLD,12)); GridBagConstraints gbc11 = new GridBagConstraints(); gbc11.gridx=1; gbc11.gridy=4; gbc11.fill = GridBagConstraints.BOTH; add(neua); gbl.setConstraints(neua,gbc11); // gestrige Apfelsinen mittela = new JLabel(""+ferien.getBar().getSinen(1)); mittela.setVerticalAlignment(SwingConstants.BOTTOM); mittela.setHorizontalAlignment(SwingConstants.CENTER); mittela.setOpaque(true); mittela.setBackground(new Color(0xB7E5ED)); mittela.setFont(new Font("sans-serif",Font.BOLD,12)); gbc11 = new GridBagConstraints(); gbc11.gridx=2; gbc11.gridy=4; gbc11.fill = GridBagConstraints.BOTH; add(mittela); gbl.setConstraints(mittela,gbc11); // alte Apfelsinen alta = new JLabel(""+ferien.getBar().getSinen(0)); alta.setVerticalAlignment(SwingConstants.BOTTOM); alta.setHorizontalAlignment(SwingConstants.CENTER); alta.setOpaque(true); alta.setBackground(new Color(0xB7E5ED)); alta.setFont(new Font("sans-serif",Font.BOLD,12)); gbc11 = new GridBagConstraints(); gbc11.gridx=3; gbc11.gridy=4; gbc11.fill = GridBagConstraints.BOTH; add(alta); gbl.setConstraints(alta,gbc11); // Apfelsinenkaufmengeneinstller apfels= new JSlider(0,500,0); apfels.setOpaque(true); apfels.setBackground(new Color(0xB7E5ED)); apfels.setFont(new Font("sans-serif",Font.BOLD,12)); apfels.setMajorTickSpacing(125); apfels.setMinorTickSpacing(25); apfels.setPaintLabels(true); apfels.setPaintTicks(true); apfels.addChangeListener(new ChangeListener(){ public void stateChanged(ChangeEvent arg0) { tittela.setText(""+apfels.getValue()+" frische Apfelsinen? Nur 20 Cent pro Stck!"); } }); gbc11 = new GridBagConstraints(); gbc11.gridx=1; gbc11.gridwidth=2; gbc11.gridy=6; gbc11.gridheight=2; gbc11.fill = GridBagConstraints.BOTH; add(apfels); gbl.setConstraints(apfels,gbc11); // Apfelsinenkaufen tittela= new JLabel(""+apfels.getValue()+" frische Apfelsinen? Nur 20 Cent pro Stck!"); tittela.setVerticalAlignment(SwingConstants.BOTTOM); tittela.setHorizontalAlignment(SwingConstants.CENTER); tittela.setOpaque(true); tittela.setBackground(new Color(0xB7E5ED)); tittela.setFont(new Font("sans-serif",Font.BOLD,12)); gbc10 = new GridBagConstraints(); gbc10.gridx=1; gbc10.gridwidth=3; gbc10.gridy=5; gbc10.fill = GridBagConstraints.BOTH; add(tittela); gbl.setConstraints(tittela,gbc10); // kauf mich Apfelsine-Button JButton apfelk = new JButton("Kauf es!"); apfelk.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { int kostet = apfels.getValue() * Ferien.SINENPREIS; if(ferien.setGeld(-1*kostet)){ ferien.getBar().neueSinen(apfels.getValue()); revalidate(); } } }); gbc10 = new GridBagConstraints(); gbc10.gridx=3; gbc10.gridy=6; gbc10.gridheight=2; //gbc10.fill = GridBagConstraints.BOTH; add(apfelk); gbl.setConstraints(apfelk,gbc10); // Zuckercounter allezucker = new JLabel("Zucker: "+ferien.getBar().getZucker()+" g"); allezucker.setVerticalAlignment(SwingConstants.TOP); allezucker.setHorizontalAlignment(SwingConstants.CENTER); allezucker.setOpaque(true); allezucker.setBackground(new Color(0xB7E5ED)); allezucker.setFont(new Font("sans-serif",Font.BOLD,12)); GridBagConstraints gbc19 = new GridBagConstraints(); gbc19.gridx=1; gbc19.gridwidth=3; gbc19.gridy=9; gbc19.fill = GridBagConstraints.BOTH; add(allezucker); gbl.setConstraints(allezucker,gbc19); // Zuckerkaufmengeneinstller zuckers= new JSlider(0,20,0); zuckers.setOpaque(true); zuckers.setBackground(new Color(0xB7E5ED)); zuckers.setFont(new Font("sans-serif",Font.BOLD,12)); zuckers.setMajorTickSpacing(5); zuckers.setMinorTickSpacing(1); zuckers.setPaintLabels(true); zuckers.setPaintTicks(true); zuckers.addChangeListener(new ChangeListener(){ public void stateChanged(ChangeEvent arg0) { tittelz.setText(""+zuckers.getValue()+" Kilo Zucker? Nur 1 Euro pro Kilo!"); } }); gbc11 = new GridBagConstraints(); gbc11.gridx=1; gbc11.gridwidth=2; gbc11.gridy=11; gbc11.gridheight=2; gbc11.fill = GridBagConstraints.BOTH; add(zuckers); gbl.setConstraints(zuckers,gbc11); // Zuckerkaufen tittelz= new JLabel(""+zuckers.getValue()+" Kilo Zucker? Nur 1 Euro pro Kilo!"); tittelz.setVerticalAlignment(SwingConstants.BOTTOM); tittelz.setHorizontalAlignment(SwingConstants.CENTER); tittelz.setOpaque(true); tittelz.setBackground(new Color(0xB7E5ED)); tittelz.setFont(new Font("sans-serif",Font.BOLD,12)); gbc10 = new GridBagConstraints(); gbc10.gridx=1; gbc10.gridwidth=3; gbc10.gridy=10; gbc10.fill = GridBagConstraints.BOTH; add(tittelz); gbl.setConstraints(tittelz,gbc10); // kauf mich Zucker-Button JButton zuckerk = new JButton("Kauf es!"); zuckerk.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) { int kostet = zuckers.getValue()* Ferien.ZUCKERPREIS; if(ferien.setGeld(-1*kostet)){ ferien.getBar().neuerZucker(zuckers.getValue()*1000); revalidate(); } } }); gbc10 = new GridBagConstraints(); gbc10.gridx=3; gbc10.gridy=11; gbc10.gridheight=2; //gbc10.fill = GridBagConstraints.BOTH; add(zuckerk); gbl.setConstraints(zuckerk,gbc10); // Barkeepertitel tittel = new JLabel("Misch es - Willst du, kriegst du!"); tittel.setVerticalAlignment(SwingConstants.CENTER); tittel.setHorizontalAlignment(SwingConstants.CENTER); tittel.setOpaque(true); tittel.setBackground(new Color(0xB7E5ED)); tittel.setFont(new Font("sans-serif",Font.BOLD,20)); gbc10 = new GridBagConstraints(); gbc10.gridx=1; gbc10.gridwidth=3; gbc10.gridy=14; gbc10.gridheight=2; gbc10.fill = GridBagConstraints.BOTH; add(tittel); gbl.setConstraints(tittel,gbc10); // Mischmengeneinstller mixers= new JSlider(0,100,0); mixers.setOpaque(true); mixers.setBackground(new Color(0xB7E5ED)); mixers.setFont(new Font("sans-serif",Font.BOLD,12)); mixers.setMajorTickSpacing(25); mixers.setMinorTickSpacing(5); mixers.setPaintLabels(true); mixers.setPaintTicks(true); mixers.addChangeListener(new ChangeListener(){ public void stateChanged(ChangeEvent arg0) { tittelm.setText("Echte "+mixers.getValue()+"% Saft ins Glas!"); } }); gbc11 = new GridBagConstraints(); gbc11.gridx=1; gbc11.gridwidth=3; gbc11.gridy=17; gbc11.gridheight=2; gbc11.fill = GridBagConstraints.BOTH; add(mixers); gbl.setConstraints(mixers,gbc11); // Mischverhltnisanzeiger tittelm= new JLabel("Echte "+mixers.getValue()+"% Saft ins Glas!"); tittelm.setVerticalAlignment(SwingConstants.BOTTOM); tittelm.setHorizontalAlignment(SwingConstants.CENTER); tittelm.setOpaque(true); tittelm.setBackground(new Color(0xB7E5ED)); tittelm.setFont(new Font("sans-serif",Font.BOLD,12)); gbc10 = new GridBagConstraints(); gbc10.gridx=1; gbc10.gridwidth=3; gbc10.gridy=16; gbc10.fill = GridBagConstraints.BOTH; add(tittelm); gbl.setConstraints(tittelm,gbc10); // Preiseinstller preiss= new JSlider(0,200,0); preiss.setOpaque(true); preiss.setBackground(new Color(0xB7E5ED)); preiss.setFont(new Font("sans-serif",Font.BOLD,12)); preiss.setMajorTickSpacing(50); preiss.setMinorTickSpacing(10); preiss.setPaintLabels(true); preiss.setPaintTicks(true); preiss.addChangeListener(new ChangeListener(){ public void stateChanged(ChangeEvent arg0) { tittelp.setText("Ich verkaufe mich fr "+makeMoney((preiss.getValue()))+"!"); } }); gbc11 = new GridBagConstraints(); gbc11.gridx=1; gbc11.gridwidth=3; gbc11.gridy=20; gbc11.gridheight=2; gbc11.fill = GridBagConstraints.BOTH; add(preiss); gbl.setConstraints(preiss,gbc11); // Mischverhltnisanzeiger tittelp= new JLabel("Ich verkaufe mich fr "+makeMoney((preiss.getValue()))+"!"); tittelp.setVerticalAlignment(SwingConstants.BOTTOM); tittelp.setHorizontalAlignment(SwingConstants.CENTER); tittelp.setOpaque(true); tittelp.setBackground(new Color(0xB7E5ED)); tittelp.setFont(new Font("sans-serif",Font.BOLD,12)); gbc10 = new GridBagConstraints(); gbc10.gridx=1; gbc10.gridwidth=3; gbc10.gridy=19; gbc10.fill = GridBagConstraints.BOTH; add(tittelp); gbl.setConstraints(tittelp,gbc10); } public void revalidate(){ day.setText(" Tag: "+ferien.getTag()); money.setText(makeMoney(ferien.getGeld())); bedientg.setText("Gestern: "+(ferien.getBar().getAlleKunden()-bedient)); bedienta.setText("Gesamt: "+(ferien.getBar().getAlleKunden())); experience.setValue((int)(ferien.getExperience()*100)); alleapfel.setText("Orangen: "+ferien.getBar().getAlleSinen()+""); neua.setText(""+ferien.getBar().getSinen(2)); mittela.setText(""+ferien.getBar().getSinen(1)); alta.setText(""+ferien.getBar().getSinen(0)); apfels.setValue(0); allezucker.setText("Zucker: "+ferien.getBar().getZucker()+" g"); zuckers.setValue(0); } public void revalidateAll(){ revalidate(); mixers.setValue((int)(ferien.getBar().getMix()*100)); preiss.setValue((int)(ferien.getBar().getPreis()*100)); } private void endGame(){ String arg1="Du hast drei Wochen lang Saft verkauft.\n"; arg1 = arg1 + "In dieser Zeit hast du "+ferien.getBar().getAlleKunden()+" Kunden betreut.\n"; arg1 = arg1 + "Du hast "+(makeMoney(ferien.getGeld()-2500))+" verdient.\n"; arg1 = arg1 + "Das reicht immerhin fr " + getReward(ferien.getGeld()-2500)+".\n"; arg1 = arg1 + ferien.getAlleBekannten()+" Menschen kennen deinen Laden.\n"; double i = (ferien.getAlleBekannten()-100)/100.0; i*=100; int du =(int)i; arg1 = arg1 + "Das ist ein Zuwachs von "+ du+ " Prozent.\n"; arg1 = arg1 + "Gbe es einen Highscore, wre er unermesslich.\n"; arg1 = arg1 + "\nUnd jetzt den ganzen Mist noch mal besser?"; du = JOptionPane.showConfirmDialog(this,arg1,"Die Ferien sind vorbei!",JOptionPane.YES_NO_OPTION); if(du == JOptionPane.CANCEL_OPTION || du == JOptionPane.NO_OPTION){ verkaufen.setEnabled(false); System.exit(0); } if(du == JOptionPane.YES_OPTION) restartAllThis(); } private String getReward(int am){ am /= 100; if(am>1500) return "einen Flachbildfernseher."; else if(am>1000) return "einen neuen Computer."; else if(am>750) return "ein super Fahrrad."; else if(am>400) return "eine Playstation plus Ballerspiele."; else if(am>200) return "eine nigelnagelneue XBox"; else if(am>100) return "alle Staffeln der Sopranos auf DVD."; else if(am>80) return "zwei Wochen Ferienlager"; else if(am>60) return "ein sexy Fuballtrikot in XXL."; else if(am>40) return "ein neues Computerspiel."; else if(am>20) return "einmal Kino mit dem Mdchen, das nichts von dir will."; else if(am>10) return "eine Kiste Apfelsinen."; else return "gar nichts."; } private void restartAllThis(){ ferien = new Ferien(); ferien.addObserver(this); bedient = 0; revalidateAll(); } private String makeMoney(int d){ String m=Integer.toString(d); if(m.length()<2) m = "00" + m; else if(m.length()<3) m = "0" + m; String v = m.substring(0,m.length()-2); String n = m.substring(m.length()-2); m = v + "," + n + " "; return m; } /** * @param args */ public static void main(String[] args) { JFrame opener = new JFrame("SummerSell"); SummerSell game = new SummerSell(); opener.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); opener.setContentPane(game); opener.pack(); opener.setVisible(true); } public void start(){ setVisible(true); } public void update(Observable arg0, Object arg1) { //if(arg0 instanceof Ferien){ JOptionPane.showMessageDialog(this,arg1,"Ereignis",JOptionPane.OK_OPTION); //} } } PK a8\05 de/monarchy/summersell/Bar.class1nde/monarchy/summersell/Barjava/lang/Objectsinen[IzuckerIuebermischeDpreisferienLde/monarchy/summersell/Ferien;bedient allekunden$(Lde/monarchy/summersell/Ferien;DD)VCode  ()V         java/lang/NullPointerException"no play $ %(Ljava/lang/String;)V ' ()setPreis(D)V + ,)setMix . LineNumberTableLocalVariableTablethisLde/monarchy/summersell/Bar;playmixprice neueSinen(I)V9"java/lang/IllegalArgumentException; bad amount 8$ >@?de/monarchy/summersell/Ferien ABgetTag()Imenge neuerZuckerverkauf!(I)Lde/monarchy/summersell/Drink; H @iLde/monarchy/summersell/Drink N KP Q(DID)Vtastesaftgepresstapfel geschmack zuckermenge getZuckergetSinen(I)I\bad dayold getAlleSinengetPreis()D getKunden getAlleKunden d getMixg bad price!ibad mixresetKundenCounter rotateSinen SourceFileBar.java!    9** ***+ Y!#*&*(**+-/.   (.380*9129394 95 67M 8Y:<*-=*\.`O'*-=*\.`O *\.`O/"(5BL0M12MCD7Y 8Y:<*Y`/!"#$012CEF *GII(k6*d6*6(l`6H*.*\.dO,*.*\.dO*.*\.dO؄*Yd6d6IoIl6dl66**Yd*6*hd<*Y`KY(*MO/!'( )*+ ,$--.0/90F1O2\3e4o6r7u.z9:;=>?@ABCDFGIJK0R12R  ST-URVJWXB/*/O0 12YZV 8Y[<*./S TU012]^B?*.*.`*.`/Y0 12_`/*M/]0 12aB/*/a0 12bB/*c/e0 12e`/*G/i0 12()V' 8Yf<*'M/mnop0125 ,)\' ' 8Yh<*'G/s tuv0124 jE*Yc*`c*/y z{0 12kV **.O**.O*O/~ 0  12lmPK ]5h  de/monarchy/summersell/Bar.javapackage de.monarchy.summersell; public class Bar { private int[] sinen = {0,0,0}; private int zucker=0; private int ueber=0; private double mische; private double preis; private Ferien ferien; private int bedient=0; private int allekunden; public Bar(Ferien play, double mix, double price){ if(play==null) throw new NullPointerException("no play"); setPreis(price); setMix(mix); ferien = play; } public void neueSinen(int menge){ if(menge<0) throw new IllegalArgumentException("bad amount"); if(ferien.getTag()==1000) sinen[0]+=menge; else if(ferien.getTag()==1001) sinen[1]+=menge; else sinen[2]+=menge; } public void neuerZucker(int menge){ if(menge<0) throw new IllegalArgumentException("bad amount"); zucker += menge; } public Drink verkauf(int taste){ double mische = this.mische; int saft = (int)(200*mische); int gepresst = saft - ueber; ueber=0; if(gepresst<0) gepresst=-40; int apfel = gepresst/40 + 1; while(apfel>0){ if(sinen[0]>0) sinen[0]--; else if(sinen[1]>0) sinen[1]--; else if(sinen[2]>0) sinen[2]--; else break; gepresst-=40; apfel--; } if(gepresst<0){ ueber -= gepresst; gepresst=0; } saft = saft-gepresst; mische = saft / 200.0; int geschmack = saft / 2; int zuckermenge = (geschmack-taste)/2; if(zuckermenge<0) zuckermenge=0; if(zucker>=zuckermenge) zucker-=zuckermenge; else{ zuckermenge = zucker; zucker = 0; } taste = geschmack - 2*zuckermenge ; bedient++; return new Drink(mische,taste,preis); } public int getZucker(){ return zucker; } public int getSinen(int old){ if(old<0 || old>2) throw new IllegalArgumentException("bad day"); return sinen[old]; } public int getAlleSinen(){ return sinen[0]+sinen[1]+sinen[2]; } public double getPreis(){ return preis; } public int getKunden(){ return bedient; } public int getAlleKunden(){ return allekunden; } public double getMix(){ return mische; } public void setPreis(double price){ if(price<0) throw new IllegalArgumentException("bad price!"); preis = price; } public void setMix(double mix){ if(mix<0.0 || mix>1.0) throw new IllegalArgumentException("bad mix"); mische = mix; } public void resetKundenCounter(){ allekunden += bedient; bedient = 0; } public void rotateSinen(){ sinen[0]=sinen[1]; sinen[1]=sinen[2]; sinen[2]=0; } } PK 5mjava.policy.applet/* AUTOMATICALLY GENERATED ON Tue Apr 16 17:20:59 EDT 2002*/ /* DO NOT EDIT */ grant { permission java.security.AllPermission; }; PK 5#X .classpath PKa8#rDHMETA-INF/MANIFEST.MFPK 5yXc.projectPK a81yy"2de/monarchy/summersell/Drink.classPK 5K!de/monarchy/summersell/Drink.javaPK a8Z\&&#de/monarchy/summersell/Person.classPK 5, A"6de/monarchy/summersell/Person.javaPK a8}""#de/monarchy/summersell/Ferien.classPK ܘ5\$$";de/monarchy/summersell/Ferien.javaPK a8kk) ade/monarchy/summersell/SummerSell$1.classPK a8 )fde/monarchy/summersell/SummerSell$2.classPK a8.)kde/monarchy/summersell/SummerSell$3.classPK a8k!)pde/monarchy/summersell/SummerSell$4.classPK a8\)ude/monarchy/summersell/SummerSell$5.classPK a86)zde/monarchy/summersell/SummerSell$6.classPK a8|y)de/monarchy/summersell/SummerSell$7.classPK a8A<88'de/monarchy/summersell/SummerSell.classPK ,a8_"1WW&de/monarchy/summersell/SummerSell.javaPK a8\05 de/monarchy/summersell/Bar.classPK ]5h  !de/monarchy/summersell/Bar.javaPK 5m,java.policy.appletPK 5#X -.classpathPKz.