Look at this code.......
def MyGetEnemyName (self):
me=Bladex.GetEntity(self.Name)
char=Bladex.GetEntity("Player1")
if not self.AttackOnSight:
return None
if not self.NameOfEnemy or Bladex.GetEntity(self.NameOfEnemy).Life <=0:
pjp = me.Position
enemyList=[]
pj_dir=me.Rel2AbsVector(0.0,-1.0,0.0)
for ename in Bladex.GetEnemiesVisibleFrom(pjp,30000,pj_dir,0.0):
ene=Bladex.GetEntity(ename)
if ene.Person:
if self.IsValidEnemy(ene):
enemyList.append(ene.Name)
if me.CanISee(char):
enemyList.append("Player1")
if len(enemyList) == 0:
return None
enemyList.sort(self.ChooseCanISeeNearest)
self.NameOfEnemy=enemyList[0]
enemy=Bladex.GetEntity(self.NameOfEnemy)
me.SetEnemy(enemy)
self.ChaseCount=0
return self.NameOfEnemy
It's all over the place.
Trouble is, in the editor it appears correct.
This is how it should look......
def MyGetEnemyName (self):
me=Bladex.GetEntity(self.Name)
char=Bladex.GetEntity("Player1")
if not self.AttackOnSight:
return None
if not self.NameOfEnemy or Bladex.GetEntity(self.NameOfEnemy).Life <=0:
pjp = me.Position
enemyList=[]
pj_dir=me.Rel2AbsVector(0.0,-1.0,0.0)
for ename in Bladex.GetEnemiesVisibleFrom(pjp,30000,pj_dir,0.0):
ene=Bladex.GetEntity(ename)
if ene.Person:
if self.IsValidEnemy(ene):
enemyList.append(ene.Name)
if me.CanISee(char):
enemyList.append("Player1")
if len(enemyList) == 0:
return None
enemyList.sort(self.ChooseCanISeeNearest)
self.NameOfEnemy=enemyList[0]
enemy=Bladex.GetEntity(self.NameOfEnemy)
me.SetEnemy(enemy)
self.ChaseCount=0
return self.NameOfEnemy
I cut each line in turn and set the cursor to the left margin. Did the required number of tabs and pasted
it back in. It works fine now. This process could get a wee bit tedious though.
And I might write code and it may be that it raises no errors, but how can I be sure it hasn't shifted a
clause sideways and upset my logic???????? I can't keep checking it on this page.