class Job {
+id
+type: string
+name: string
+description: string
+start: Place
+end: Place
+load: number # number of containers in load
+payType: string # gold, tokens, crates, materials
+pay: number
+startTime: Date # date when job taken
}
a job describes a unit of work that the player has to complete
jobs appear in multiple states
in a vehicle instance (either stopped in a place or moving between places)
in a place stored there by a vehicle instance unload
in a place being offered for pickup
each job has a type which determines special considerations for a job. future expansion
each job consists of a load which is the number of 'containers' that have to move
each job starts in one place and has to end in another; also has the startTime when the job was picked up
jobs in any state are saved to db so as to not be spoofable by a player - this adds a lot of db but cannot be avoided
This proved a lot more work that initially anticipated - jobs was split into jobs for vehicles, jobs for places etc. It also became evident that all the other data structures need to be implemented at least on server side to allow for player user stories to star being designed.
Closing down this after last commit, will continue with data structures implementation