Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- *
- *@author Keal
- */
- // dans la classe Monster:
- private int assaultDistance = -1;
- public int getAssaultDistance()
- {
- return assaultDistance;
- }
- // dans la classe MobGroup
- private int assaultDistance = -1;
- public boolean isAgressive(int align)
- {
- if(align > 0)
- {
- int knightBonta = 296;
- int knightBrak = 372;
- for(MobGrade MG : _Mobs.values())
- {
- int templateId = MG.getTemplate().getID();
- if(templateId == knightBrak || templateId == knightBonta)
- {
- if(align == Constants.ALIGNEMENT_BONTARIEN)
- {
- if(templateId == knightBrak)
- return true
- else
- return false;
- }
- else if(align == Constants.ALIGNEMENT_BRAKMARIEN)
- {
- if(templateId == knightBonta)
- return true;
- else
- return false;
- }
- else
- {
- //FIXME: Les mercenaires ce font-il agresser par les miliciens des cités d'alignement ?
- }
- }
- }
- }
- return assaultDistance > -1;
- }
- // dans le constructeur MobGroup après ou avant orientation = Formulas.getRandomOrientation(); (peu importe)
- for(MobGrade MG : _Mobs.values())
- {
- int newAssaultDistance = MG.getTemplate().getAssaultDistance();
- if(assaultDistance < newAssaultDistance)
- assaultDistance = newAssaultDistance; //On met attribue la plus grande distance d'agression possible.
- }
- // dans la classe Carte
- public boolean haveAgressiveMobGroupeAtCell(int cellId)
- {
- MobGroup mobGroup = _cases.get(cellId).getMobGroup();
- if(mobGroup != null)
- {
- if(mobGroup.isAgressive)
- return true;
- }
- return false;
- }
- // dans les méthodes spawnGroup(), addStaticGroup() rajoutez après _mobGroups.put(_nextObjectID, group);
- _cases.get(group.getCellID).setMobGroup(group);
- // dans la classe Case
- private MobGroup mobGroup = null;
- public void setMobGroup(MobGroup mobGroup)
- {
- this.mobGroup = mobGroup;
- }
- public MobGroup getMobGroup()
- {
- return mobGroup;
- }
- // dans la classe Pathfinding, dans la méthode ValidSinglePath() après la ligne: if(fight != null && fight.isOccuped(dirCaseID))return "stop:"+lastPos;
- if(fight == null && map.haveAgressiveMobGroupeAtCell(dirCaseID))return "stop:"+lastPos;
Advertisement
Add Comment
Please, Sign In to add comment