37 public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
39 String factionId = params.get(0).getString(memoryMap);
40 VarAndMemory result = params.get(1).getVarNameAndMemory(memoryMap);
44 RepLevel level = player.getRelationshipLevel(faction);
45 if (level.isAtBest(RepLevel.SUSPICIOUS)) {
47 result.memory.set(result.name, 0f, 0);
50 float rel = player.getRelationship(factionId);
52 float r = (float) Math.random();
54 float roll = rel * 0.2f + rel * 0.8f * (float) Math.random() + (1f - rel) * r;
56 result.memory.set(result.name, roll, 0);