parent
							
								
									b73672f469
								
							
						
					
					
						commit
						17c5fd07f4
					
				
				 1 changed files with 104 additions and 0 deletions
			
			
		| @ -0,0 +1,104 @@ | |||||||
|  | // Copyright © 2023 Entreprise SkamKraft
 | ||||||
|  | "use strict"; | ||||||
|  | 
 | ||||||
|  | import { SpaceTraders } from "./config.js"; | ||||||
|  | import { My } from "./agent.js"; | ||||||
|  | 
 | ||||||
|  | export class Ship { | ||||||
|  |   constructor(data) { | ||||||
|  |     this.symbol = data.symbol; | ||||||
|  |     this.registration = data.registration; | ||||||
|  |     this.nav = data.nav; | ||||||
|  |     this.crew = data.crew; | ||||||
|  |     this.frame = data.frame; | ||||||
|  |     this.reactor = data.reactor; | ||||||
|  |     this.engine = data.engine; | ||||||
|  |     this.cooldown = data.cooldown; | ||||||
|  |     this.modules = data.modules; | ||||||
|  |     this.mounts = data.mounts; | ||||||
|  |     this.cargo = data.cargo; | ||||||
|  |     this.fuel = data.fuel; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   static get(shipSymbol, callback, error_handler) { | ||||||
|  |     const url = `${SpaceTraders.host}/my/ships/${shipSymbol}`; | ||||||
|  |     $.ajax({ | ||||||
|  |       url: url, | ||||||
|  |       method: "GET", | ||||||
|  |       headers: { | ||||||
|  |         Accept: "application/json", | ||||||
|  |         Authorization: `Bearer ${My.agent.token}`, | ||||||
|  |       }, | ||||||
|  |       success: (response) => { | ||||||
|  |         callback(new Ship(response.data)); | ||||||
|  |       }, | ||||||
|  |       error: (err) => { | ||||||
|  |         error_handler(err); | ||||||
|  |       }, | ||||||
|  |     }); | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   static list(callback, error_handler) { | ||||||
|  |     const url = `${SpaceTraders.host}/my/ships`; | ||||||
|  |     $.ajax({ | ||||||
|  |       url: url, | ||||||
|  |       method: "GET", | ||||||
|  |       headers: { | ||||||
|  |         Accept: "application/json", | ||||||
|  |         Authorization: `Bearer ${My.agent.token}`, | ||||||
|  |       }, | ||||||
|  |       success: (response) => { | ||||||
|  |         const ships = []; | ||||||
|  |         const meta = response.meta; | ||||||
|  |         response.data.forEach((ship) => { | ||||||
|  |           ships.push(new Ship(ship)); | ||||||
|  |         }); | ||||||
|  |         callback(ships, meta); | ||||||
|  |       }, | ||||||
|  |       error: (err) => { | ||||||
|  |         error_handler(err); | ||||||
|  |       }, | ||||||
|  |     }); | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   static purchase(shipType, waypointSymbol, callback, error_handler) { | ||||||
|  |     const url = `${SpaceTraders.host}/my/ships`; | ||||||
|  |     $.ajax({ | ||||||
|  |       url: url, | ||||||
|  |       method: "POST", | ||||||
|  |       headers: { | ||||||
|  |         "Content-Type": "application/json", | ||||||
|  |         Accept: "application/json", | ||||||
|  |         Authorization: `Bearer ${My.agent.token}`, | ||||||
|  |       }, | ||||||
|  |       data: `{\n  "shipType": "${shipType}",\n  "waypointSymbol": "${waypointSymbol}"\n}`, | ||||||
|  |       success: (response) => { | ||||||
|  |         callback(new Ship(response.data.ship)); | ||||||
|  |       }, | ||||||
|  |       error: (err) => { | ||||||
|  |         error_handler(err); | ||||||
|  |       }, | ||||||
|  |     }); | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   //   get_cargo(callback, error_handler) {
 | ||||||
|  |   //     const url = `${SpaceTraders.host}/my/ships/${this.symbol}/cargo`;
 | ||||||
|  |   //     $.ajax({
 | ||||||
|  |   //       url: url,
 | ||||||
|  |   //       method: "GET",
 | ||||||
|  |   //       headers: {
 | ||||||
|  |   //         Accept: "application/json",
 | ||||||
|  |   //         Authorization: `Bearer ${My.agent.token}`,
 | ||||||
|  |   //       },
 | ||||||
|  |   //       success: (response) => {
 | ||||||
|  |   //         this.cargo = response.data;
 | ||||||
|  |   //         callback(this.cargo);
 | ||||||
|  |   //       },
 | ||||||
|  |   //       error: (err) => {
 | ||||||
|  |   //         error_handler(err);
 | ||||||
|  |   //       },
 | ||||||
|  |   //     });
 | ||||||
|  |   //   }
 | ||||||
|  | 
 | ||||||
|  |   chart(callback, error_handler) {} | ||||||
|  | } | ||||||
					Loading…
					
					
				
		Reference in New Issue