lars taube, sascha baghdadli, matthias korn, nicolas ngandeu gerald friedland, sven bittner,...

11
Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel Beetz, Dennis Heckert Henrik Steffien, Nicole Lipprandt, Jemea Ntuba, Falco Richter

Upload: wolfgang-winkler

Post on 06-Apr-2016

233 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert GünzlerMarcus Gottwald, Manuel Beetz, Dennis HeckertHenrik Steffien, Nicole Lipprandt, Jemea Ntuba, Falco Richter

Manuel Scholz

Page 2: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

Grundsätze

• Primär: Lauffähigkeit bis zum Abgabedatum

• Leichte Erweiterbarkeit, Veränderbarkeit (Applet?)

• Zusätzliches Struktur: Java-Interfaces

Page 3: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

AbstractMrXGame<<Abstract>>

AbstractDetectiveGame<<Abstract>>

MrXGuiGame

MrXAiGame

DetGuiGame

DetAiGame

FuxCl ient

chefButton()

<<Interface>>

Client<<Interface>>

Cl ientPlayer<<Interface>>

InterfaceMainGui

noti fyM ove(Move)giveMessage(Message)noti fyGameOver()

<<Interface>>

InterfaceMainAi

noti fyMove(Move)giveM essage(Message)getMove(Player) : Move

<<Interface>>

AbstractFuxGame

getAi () : InterfaceMainAi

<<Abstract>>

0..1

1

0..1

1

InterfaceMainPlayerGui

getMove() : Move

<<Interface>>

1

0..1

1

0..1

SyT icketSupply NYcT icketSupply

(c) 2000:SoftwarepraktikumInformatik FU Berl inFUX-Gruppe

InterfaceM ainMap

noti fyMove(Move)

<<Interface>>

InterfaceT icketSupply

noti fyM ove(Move)getNrTi ckets(Player, T icket) : int

<<Interface>>

InterfaceMainViewerGui<<Interface>>

FuxT imer

setT imer()getSecondsLeft()

FuxViewer

getMap() : InterfaceMainMapgetT icketSupply() : InterfaceT icketSupplygetPlayers() : Player[]getT imer() : FuxT imer

1

1

1

1

1

1

1

1

1

0..*

1

0..*

1

1

1

1

Ki<<Abstract>>

Detective_Ki

MrX_Ki

InterfaceGuiMap

getPlayerPos() : [Player]getXYcoord() : [Station]

<<Interface>>

InterfaceAiMap

getNeighbours()getPosPlayer()isFree()getShortestPath()getAl lPaths()getAl lPaths()

<<Interface>>

Routetype : int

Barrierid : int

Map

Stationnumber : intname : StringcoorX : intcoorY : intisStartPos : boolean

1..*

1

1..*

1

von

1

1

1

1

nach

1

0..*

1

0..*

via

0..1

0..1

0..1

0..1

1

1

1

1

Playername : Stringrole : int

3..6

1

3..6

1

1

0..1

1

0..1

GUI

Page 4: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

AbstractMrXGame<<Abstract>>

AbstractDetectiveGame<<Abstract>>

MrXGuiGame

MrXAiGame

DetGuiGame

DetAiGame

FuxClient

chefButton()

<<Interface>>

Client<<Interface>>

ClientPlayer<<Interface>>

InterfaceMainGui

notifyMove(Move)giveMessage(Message)notifyGameOver()

<<Interface>>

InterfaceMainAi

notifyMove(Move)giveMessage(Message)getMove(Player) : Move

<<Interface>>

AbstractFuxGame

getAi() : InterfaceMainAi

<<Abstract>>

0..11

0..11

InterfaceMainPlayerGui

getMove() : Move

<<Interface>>

1

0..1

1

0..1

SyTicketSupply NYcTicketSupply

(c) 2000:Dennis Heckert, Marcus C. Gottwald,Manuel Beetz

InterfaceMainMap

notifyMove(Move)

<<Interface>>

InterfaceTicketSupply

notifyMove(Move)getNrTickets(Player, Ticket) : int

<<Interface>>

InterfaceMainViewerGui<<Interface>>

FuxTimer

setTimer()getSecondsLeft()

FuxViewer

getMap() : InterfaceMainMapgetTicketSupply() : InterfaceTicketSupplygetPlayers() : Player[]getTimer() : FuxTimer

1

1

1

1

1

1

1

1

1

0..*

1

0..*

1

1

1

1

Page 5: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

InterfaceGuiMap

getPlayerPos() : [Player]getXYcoord() : [Station]

<<Interface>>

InterfaceMainMap

notifyMove(move : Move)

<<Interface>>

InterfaceAiMap

getNeighbours()getPosPlayer()isFree()getShortestPath()getAllPaths()getAllPaths()

<<Interface>>

Routetype : int

Barrierid : int

Map

Stationnumber : intname : StringcoorX : intcoorY : intisStartPos : boolean

1..*

1

1..*

1von

11

11 nach

1

0..*

1

0..*

via

0..1

0..1

0..1

0..1

11 11

Playername : Stringrole : int

3..6

1

3..6

1

1

0..1

1

0..1

Page 6: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

Ki<<Abstract>>

Main_Ki

notifyMove(Move)giveMessage(Message)getMove(Player) : Move

<<Interface>>

Detective_Ki MrX_Ki

Page 7: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

InterfaceMainViewerGui

<<Interface>>InterfaceMainPlayerGui

Page 8: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

Special Features

Main: - Chef Button

GUI: - Zoombar - Auflösungsunabhängig

AI: - Verschiedene Level- Interaktion mit anderen Clients

Page 9: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel
Page 10: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel
Page 11: Lars Taube, Sascha Baghdadli, Matthias Korn, Nicolas Ngandeu Gerald Friedland, Sven Bittner, Sebastian Frielitz, Robert Günzler Marcus Gottwald, Manuel

Release date

18.07.2000