@Override public Action effectuer(Humain h) { if (nextAction != null) h.getEsprit().getActions().push(nextAction); Action a; if (comp.compare((double) (h.getAttr().get(attribute)), d)) { a = listeActions.get(0).effectuer(h); } else { a = listeActions.get(1).effectuer(h); } return a; }
protected void initializeItemsToDraw() { ownedCognitons = h.getEsprit().getCognitons(); allCognitons = new ArrayList<TypeCogniton>(); plans = new ArrayList<NPlan>(); for (Cogniton cog : ownedCognitons) { allCognitons.add(cog.getCogniton()); } // allCognitons.addAll(Configuration.cloudCognitons); ownedPlans = h.getEsprit().getPlans(); for (NPlanPondere pl : ownedPlans) { plans.add(pl.getPlan()); } for (Group gr : h.getEsprit().getGroups().keySet()) { groups.add(gr); for (TypeCogniton cog : gr.getArrayListOfCognitonType(h.getEsprit().getGroups().get(gr))) { allCognitons.add(cog); } } }
protected void initializeDrawing() { for (int i = 0; i < allCognitons.size(); i++) { afficherCogniton(allCognitons.get(i), 80, 40 + espacement * i); } for (int i = 0; i < plans.size(); i++) { afficherPlan( plans.get(i), espaceCognitonsPlans, 40 + espacement * i, h.getEsprit().getPlan(plans.get(i))); } for (int i = 0; i < groups.size(); i++) { showGroup( groups.get(i), h.getEsprit().getGroups().get(groups.get(i)), espaceCognitonsPlans * 1.8, 40 + espacement * i); } creerLiensInfluence(); creerLiensConditionnels(); }
public Action effectuer(Humain h) { Esprit m = h.getEsprit(); // Number of turns if (m.getActionData(this) == null) { h.getEsprit().addTag(myTag); m.setActionData(this, turns - 1); } else { if (m.ownTag(myTag)) { m.setActionData(this, (Integer) m.getActionData(this) - 1); } else { h.getEsprit().cleanActionData(this); return nextAction; } } List<Humain> humains = h.humansHereWithTag(compatibleTag); // Do the trade if (!humains.isEmpty()) { Humain target = humains.get((int) Math.floor(humains.size() * Math.random())); // Change my inventory for (int i = 0; i < nItemToGive; i++) { h.getInventaire().deleteObjets(itemToGive, 1); } for (int i = 0; i < nItemToTake; i++) { h.getInventaire().addObjets(itemToTake, 1); } // Change target inventory for (int i = 0; i < nItemToGive; i++) { target.getInventaire().addObjets(itemToGive, 1); } for (int i = 0; i < nItemToTake; i++) { target.getInventaire().deleteObjets(itemToTake, 1); } // Remove the tags h.getEsprit().cleanActionData(this); h.getEsprit().removeTag(myTag); target.getEsprit().removeTag(compatibleTag); return listeActions.get(0); } else if (m.getActionData(this).equals(0)) { h.getEsprit().cleanActionData(this); h.getEsprit().removeTag(myTag); return listeActions.get(1); } else { return this; } }
public void updateData() { try { semaphore.acquire(); } catch (InterruptedException ex) { System.out.println(ex); } groups = new ArrayList<Group>(); for (Group gr : h.getEsprit().getGroups().keySet()) { groups.add(gr); } // Add cognitons for (Cogniton cog : h.getEsprit().getCognitons()) { if (!this.cognitonIsDrawn(cog.getCogniton())) { this.afficherCogniton(cog.getCogniton(), Math.random() * 400, Math.random() * 400); this.gCognitons.get(gCognitons.size() - 1).setOpacite(0.0); this.gCognitons .get(gCognitons.size() - 1) .addAnimation( new JJAnimationOpacite(50, gCognitons.get(gCognitons.size() - 1), 0.02, false)); this.supprimerLiensInfluence(); this.supprimerLiensConditionnels(); this.clearTriggerLink(); creerLiensInfluence(); creerLiensConditionnels(); createTriggerLink(); } } for (Group gr : groups) { for (Cogniton cog : gr.getRolesAndCulturons().get(h.getEsprit().getGroups().get(gr))) { if (!this.cognitonIsDrawn(cog.getCogniton())) { this.afficherCogniton(cog.getCogniton(), Math.random() * 400, Math.random() * 400); this.gCognitons.get(gCognitons.size() - 1).setOpacite(0.0); this.gCognitons .get(gCognitons.size() - 1) .addAnimation( new JJAnimationOpacite(50, gCognitons.get(gCognitons.size() - 1), 0.02, false)); this.supprimerLiensInfluence(); this.supprimerLiensConditionnels(); this.clearTriggerLink(); creerLiensInfluence(); creerLiensConditionnels(); createTriggerLink(); } } } // Add plans for (NPlanPondere pl : h.getEsprit().getPlans()) { if (!this.planIsDrawn(pl.getPlan())) { this.afficherPlan(pl.getPlan(), Math.random() * 400, Math.random() * 400, pl); this.gPlan.get(gPlan.size() - 1).setOpacite(0.0); this.gPlan .get(gPlan.size() - 1) .addAnimation(new JJAnimationOpacite(50, gPlan.get(gPlan.size() - 1), 0.02, false)); this.supprimerLiensInfluence(); this.supprimerLiensConditionnels(); this.clearTriggerLink(); creerLiensInfluence(); creerLiensConditionnels(); createTriggerLink(); } } // Remove cognitons for (TypeCogniton cog : Configuration.cognitons) { if (cog.getType() != TypeDeCogniton.CULTURON && this.cognitonIsDrawn(cog) && !h.getEsprit().ownCogniton(cog)) { this.removeCogniton(cog); this.supprimerLiensInfluence(); this.supprimerLiensConditionnels(); this.clearTriggerLink(); creerLiensInfluence(); creerLiensConditionnels(); createTriggerLink(); } else if (cog.getType() == TypeDeCogniton.CULTURON) { boolean exist = false; for (Group gr : groups) { if (gr.roleContainsCulturon(cog, h.getEsprit().getGroups().get(gr))) { exist = true; } } if (!exist) { this.removeCogniton(cog); this.supprimerLiensInfluence(); this.supprimerLiensConditionnels(); this.clearTriggerLink(); creerLiensInfluence(); creerLiensConditionnels(); createTriggerLink(); } } } // Remove plans for (NPlan pl : Configuration.plans) { if (this.planIsDrawn(pl) && !h.getEsprit().ownPlan(pl)) { this.removePlan(pl); this.supprimerLiensInfluence(); this.supprimerLiensConditionnels(); this.clearTriggerLink(); creerLiensInfluence(); creerLiensConditionnels(); createTriggerLink(); } } semaphore.release(); }