File tree Expand file tree Collapse file tree 1 file changed +15
-0
lines changed
Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Original file line number Diff line number Diff line change 11import numpy as np
2+ import seaborn as sns
23
34# physical/external base state of all entites
45class EntityState (object ):
@@ -164,6 +165,20 @@ def calculate_distances(self):
164165 self .cached_dist_mag = np .linalg .norm (self .cached_dist_vect , axis = 2 )
165166 self .cached_collisions = (self .cached_dist_mag <= self .min_dists )
166167
168+ def assign_agent_colors (self ):
169+ n_dummies = 0
170+ if hasattr (self .agents [0 ], 'dummy' ):
171+ n_dummies = len ([a for a in self .agents if a .dummy ])
172+ n_adversaries = 0
173+ if hasattr (self .agents [0 ], 'adversary' ):
174+ n_adversaries = len ([a for a in self .agents if a .adversary ])
175+ n_good_agents = len (self .agents ) - n_adversaries - n_dummies
176+ dummy_colors = [(0 , 0 , 0 )] * n_dummies
177+ adv_colors = sns .color_palette ("OrRd_d" , n_adversaries )
178+ good_colors = sns .color_palette ("GnBu_d" , n_good_agents )
179+ colors = dummy_colors + adv_colors + good_colors
180+ for color , agent in zip (colors , self .agents ):
181+ agent .color = color
167182
168183 # update state of the world
169184 def step (self ):
You can’t perform that action at this time.
0 commit comments