| 
					
				 | 
			
			
				@@ -3,5 +3,26 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 (defvar *combat-menu-options-display* NIL) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 (defvar *combat-opt-lookup NIL) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; Combat options: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; Attack (with specific weapon) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; Regen shields 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; - (add value to rep-shield-val at cost of overcharing 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; - (overcharing can cause warp field to go into low-power) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; Overcharge gun at cost of overcharing reactor 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; Attempt to flee into the warp 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; - (requires full power / overcharged 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+;; - (can also cause reactor to go low power, which removes ability to regen/overcharge) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 (defun combat-loop (sector) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   "The main loop responsbile for resolving combat situations") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+(defun calculate-damage (attacker-obj target-obj attacker-weapon) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  "Calculate damage attacker will do given attacker stats, target stats, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   and weapon stats" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  (let ((target-defense-value (+ (rep-shield-val target-obi) (armor-val target-obj)))))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+(defun ship-attack (attacker-obj target-obj attacker-weapon) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  "Given a ship thats attacking, a target, and the attackers chosen weapon 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   resolve the combat by calculating shield/hull damage and resolving resources." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  (let ((calculated-damage- ; This value needs to resolve all buffs and debuffs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	  NIL)))) 
			 |