mirror of
https://github.com/OMGeeky/ATCS.git
synced 2026-01-05 11:06:18 +01:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
baa027bc41 | ||
|
|
8f2e835e9c | ||
|
|
8333fe3621 | ||
|
|
291808a564 |
@@ -11,6 +11,6 @@
|
|||||||
<classpathentry kind="lib" path="lib/rsyntaxtextarea.jar"/>
|
<classpathentry kind="lib" path="lib/rsyntaxtextarea.jar"/>
|
||||||
<classpathentry kind="lib" path="lib/ui.jar"/>
|
<classpathentry kind="lib" path="lib/ui.jar"/>
|
||||||
<classpathentry kind="lib" path="lib/bsh-2.0b4.jar"/>
|
<classpathentry kind="lib" path="lib/bsh-2.0b4.jar"/>
|
||||||
<classpathentry kind="lib" path="lib/AndorsTrainer_v0.1.2.jar"/>
|
<classpathentry kind="lib" path="lib/AndorsTrainer_v0.1.3.jar"/>
|
||||||
<classpathentry kind="output" path="bin"/>
|
<classpathentry kind="output" path="bin"/>
|
||||||
</classpath>
|
</classpath>
|
||||||
|
|||||||
Binary file not shown.
BIN
lib/AndorsTrainer_v0.1.3.jar
Normal file
BIN
lib/AndorsTrainer_v0.1.3.jar
Normal file
Binary file not shown.
@@ -1 +1 @@
|
|||||||
start "" "javaw.exe" -Xmx512M -cp "lib\ATCS_v0.5.0.jar;lib\jide-oss.jar;lib\ui.jar;lib\junit-4.10.jar;lib\json_simple-1.1.jar;lib\rsyntaxtextarea.jar;lib\prefuse.jar;lib\AndorsTrainer_v0.1.2.jar;lib\bsh-2.0b4.jar" com.gpl.rpg.atcontentstudio.ATContentStudio
|
start "" "javaw.exe" -Xmx512M -cp "lib\ATCS_v0.5.1.jar;lib\jide-oss.jar;lib\ui.jar;lib\junit-4.10.jar;lib\json_simple-1.1.jar;lib\rsyntaxtextarea.jar;lib\prefuse.jar;lib\AndorsTrainer_v0.1.3.jar;lib\bsh-2.0b4.jar" com.gpl.rpg.atcontentstudio.ATContentStudio
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
java -Xmx512M -cp lib/AndorsTrainer_v0.1.2.jar:lib/ATCS_v0.5.0.jar:lib/prefuse.jar:lib/json_simple-1.1.jar:lib/jide-oss.jar:lib/ui.jar:lib/junit-4.10.jar:lib/rsyntaxtextarea.jar:lib/bsh-2.0b4.jar com.gpl.rpg.atcontentstudio.ATContentStudio
|
java -Xmx512M -cp lib/AndorsTrainer_v0.1.3.jar:lib/ATCS_v0.5.1.jar:lib/prefuse.jar:lib/json_simple-1.1.jar:lib/jide-oss.jar:lib/ui.jar:lib/junit-4.10.jar:lib/rsyntaxtextarea.jar:lib/bsh-2.0b4.jar com.gpl.rpg.atcontentstudio.ATContentStudio
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
!include MUI2.nsh
|
!include MUI2.nsh
|
||||||
|
|
||||||
!define VERSION "0.5.0"
|
!define VERSION "0.5.1"
|
||||||
!define JAVA_BIN "java"
|
!define JAVA_BIN "java"
|
||||||
|
|
||||||
Name "Andor's Trail Content Studio v${VERSION}"
|
Name "Andor's Trail Content Studio v${VERSION}"
|
||||||
@@ -63,7 +63,7 @@ Section install
|
|||||||
SetOutPath "$INSTDIR\lib\"
|
SetOutPath "$INSTDIR\lib\"
|
||||||
file "jide-oss.jar"
|
file "jide-oss.jar"
|
||||||
file "ui.jar"
|
file "ui.jar"
|
||||||
file "AndorsTrainer_v0.1.2.jar"
|
file "AndorsTrainer_v0.1.3.jar"
|
||||||
file "junit-4.10.jar"
|
file "junit-4.10.jar"
|
||||||
file "json_simple-1.1.jar"
|
file "json_simple-1.1.jar"
|
||||||
file "ATCS_v${VERSION}.jar"
|
file "ATCS_v${VERSION}.jar"
|
||||||
@@ -93,10 +93,11 @@ Section uninstall
|
|||||||
Delete "$INSTDIR\lib\ui.jar"
|
Delete "$INSTDIR\lib\ui.jar"
|
||||||
Delete "$INSTDIR\lib\junit-4.10.jar"
|
Delete "$INSTDIR\lib\junit-4.10.jar"
|
||||||
Delete "$INSTDIR\lib\json_simple-1.1.jar"
|
Delete "$INSTDIR\lib\json_simple-1.1.jar"
|
||||||
Delete "$INSTDIR\lib\AndorsTrainer_v0.1.2.jar"
|
Delete "$INSTDIR\lib\AndorsTrainer_v0.1.3.jar"
|
||||||
Delete "$INSTDIR\lib\ATCS_v${VERSION}.jar"
|
Delete "$INSTDIR\lib\ATCS_v${VERSION}.jar"
|
||||||
Delete "$INSTDIR\lib\rsyntaxtextarea.jar"
|
Delete "$INSTDIR\lib\rsyntaxtextarea.jar"
|
||||||
Delete "$INSTDIR\lib\prefuse.jar"
|
Delete "$INSTDIR\lib\prefuse.jar"
|
||||||
|
Delete "$INSTDIR\lib\bsh-2.0b4.jar"
|
||||||
RMDir "$INSTDIR\lib\"
|
RMDir "$INSTDIR\lib\"
|
||||||
Delete "$INSTDIR\ATCS.ico"
|
Delete "$INSTDIR\ATCS.ico"
|
||||||
Delete "$INSTDIR\ATCS.cmd"
|
Delete "$INSTDIR\ATCS.cmd"
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import com.gpl.rpg.atcontentstudio.ui.WorkspaceSelector;
|
|||||||
public class ATContentStudio {
|
public class ATContentStudio {
|
||||||
|
|
||||||
public static final String APP_NAME = "Andor's Trail Content Studio";
|
public static final String APP_NAME = "Andor's Trail Content Studio";
|
||||||
public static final String APP_VERSION = "v0.5.0";
|
public static final String APP_VERSION = "v0.5.1";
|
||||||
|
|
||||||
public static boolean STARTED = false;
|
public static boolean STARTED = false;
|
||||||
public static StudioFrame frame = null;
|
public static StudioFrame frame = null;
|
||||||
|
|||||||
@@ -147,7 +147,7 @@ public class ActorCondition extends JSONElement {
|
|||||||
public void parse(Map aCondJson) {
|
public void parse(Map aCondJson) {
|
||||||
|
|
||||||
if (aCondJson.get("category") != null) this.category = ACCategory.valueOf((String) aCondJson.get("category"));
|
if (aCondJson.get("category") != null) this.category = ACCategory.valueOf((String) aCondJson.get("category"));
|
||||||
this.positive = JSONElement.getInteger((Number) aCondJson.get("positive"));
|
this.positive = JSONElement.getInteger((Number) aCondJson.get("isPositive"));
|
||||||
Map abilityEffect = (Map) aCondJson.get("abilityEffect");
|
Map abilityEffect = (Map) aCondJson.get("abilityEffect");
|
||||||
if (abilityEffect != null) {
|
if (abilityEffect != null) {
|
||||||
this.constant_ability_effect = new AbilityEffect();
|
this.constant_ability_effect = new AbilityEffect();
|
||||||
@@ -269,8 +269,8 @@ public class ActorCondition extends JSONElement {
|
|||||||
if (this.icon_id != null) jsonAC.put("iconID", this.icon_id);
|
if (this.icon_id != null) jsonAC.put("iconID", this.icon_id);
|
||||||
if (this.display_name != null) jsonAC.put("name", this.display_name);
|
if (this.display_name != null) jsonAC.put("name", this.display_name);
|
||||||
if (this.category != null) jsonAC.put("category", this.category.toString());
|
if (this.category != null) jsonAC.put("category", this.category.toString());
|
||||||
if (this.positive != null && this.positive == 1) jsonAC.put("positive", this.positive);
|
if (this.positive != null && this.positive == 1) jsonAC.put("isPositive", this.positive);
|
||||||
if (this.stacking != null && this.stacking == 1) jsonAC.put("stacking", this.stacking);
|
if (this.stacking != null && this.stacking == 1) jsonAC.put("isStacking", this.stacking);
|
||||||
if (this.round_effect != null) {
|
if (this.round_effect != null) {
|
||||||
Map jsonRound = new LinkedHashMap();
|
Map jsonRound = new LinkedHashMap();
|
||||||
if (this.round_effect.visual_effect != null) jsonRound.put("visualEffectID", this.round_effect.visual_effect);
|
if (this.round_effect.visual_effect != null) jsonRound.put("visualEffectID", this.round_effect.visual_effect);
|
||||||
|
|||||||
@@ -64,7 +64,8 @@ public class Dialogue extends JSONElement {
|
|||||||
removeSpawnArea,
|
removeSpawnArea,
|
||||||
deactivateSpawnArea,
|
deactivateSpawnArea,
|
||||||
activateMapObjectGroup,
|
activateMapObjectGroup,
|
||||||
deactivateMapObjectGroup
|
deactivateMapObjectGroup,
|
||||||
|
changeMapFilter
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -244,6 +245,7 @@ public class Dialogue extends JSONElement {
|
|||||||
case spawnAll:
|
case spawnAll:
|
||||||
case removeSpawnArea:
|
case removeSpawnArea:
|
||||||
case deactivateSpawnArea:
|
case deactivateSpawnArea:
|
||||||
|
case changeMapFilter:
|
||||||
reward.map = reward.map_name != null ? proj.getMap(reward.map_name) : null;
|
reward.map = reward.map_name != null ? proj.getMap(reward.map_name) : null;
|
||||||
break;
|
break;
|
||||||
case actorCondition:
|
case actorCondition:
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ public class TMXMap extends GameDataElement {
|
|||||||
public static final String WALKABLE_LAYER_NAME = "Walkable";
|
public static final String WALKABLE_LAYER_NAME = "Walkable";
|
||||||
|
|
||||||
public enum ColorFilter {
|
public enum ColorFilter {
|
||||||
|
none,
|
||||||
black20,
|
black20,
|
||||||
black40,
|
black40,
|
||||||
black60,
|
black60,
|
||||||
|
|||||||
@@ -2,6 +2,10 @@ package com.gpl.rpg.atcontentstudio.model.maps;
|
|||||||
|
|
||||||
import java.awt.Image;
|
import java.awt.Image;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.nio.file.Files;
|
||||||
|
import java.nio.file.Path;
|
||||||
|
import java.nio.file.Paths;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
@@ -17,12 +21,14 @@ import com.gpl.rpg.atcontentstudio.model.Project;
|
|||||||
import com.gpl.rpg.atcontentstudio.model.Project.ResourceSet;
|
import com.gpl.rpg.atcontentstudio.model.Project.ResourceSet;
|
||||||
import com.gpl.rpg.atcontentstudio.model.ProjectTreeNode;
|
import com.gpl.rpg.atcontentstudio.model.ProjectTreeNode;
|
||||||
import com.gpl.rpg.atcontentstudio.model.gamedata.GameDataSet;
|
import com.gpl.rpg.atcontentstudio.model.gamedata.GameDataSet;
|
||||||
|
import com.gpl.rpg.atcontentstudio.model.sprites.SpriteSheetSet;
|
||||||
import com.gpl.rpg.atcontentstudio.ui.DefaultIcons;
|
import com.gpl.rpg.atcontentstudio.ui.DefaultIcons;
|
||||||
|
|
||||||
public class TMXMapSet implements ProjectTreeNode {
|
public class TMXMapSet implements ProjectTreeNode {
|
||||||
|
|
||||||
public static final String DEFAULT_REL_PATH_IN_SOURCE = "res/xml/";
|
public static final String DEFAULT_REL_PATH_IN_SOURCE = "res"+File.separator+"xml"+File.separator;
|
||||||
public static final String DEFAULT_REL_PATH_IN_PROJECT = "maps/";
|
public static final String DEFAULT_REL_PATH_IN_PROJECT = "maps"+File.separator;
|
||||||
|
public static final String DEFAULT_REL_PATH_TO_DRAWABLE = ".."+File.separator+"drawable"+File.separator;
|
||||||
|
|
||||||
public static final String GAME_MAPS_ARRAY_NAME = "loadresource_maps";
|
public static final String GAME_MAPS_ARRAY_NAME = "loadresource_maps";
|
||||||
public static final String DEBUG_SUFFIX = "_debug";
|
public static final String DEBUG_SUFFIX = "_debug";
|
||||||
@@ -44,6 +50,15 @@ public class TMXMapSet implements ProjectTreeNode {
|
|||||||
if (!this.mapFolder.exists()) {
|
if (!this.mapFolder.exists()) {
|
||||||
this.mapFolder.mkdirs();
|
this.mapFolder.mkdirs();
|
||||||
}
|
}
|
||||||
|
Path target = Paths.get(getProject().baseContent.gameSprites.drawableFolder.getAbsolutePath());
|
||||||
|
Path link = Paths.get(new File(mapFolder.getAbsolutePath()+File.separator+DEFAULT_REL_PATH_TO_DRAWABLE).getAbsolutePath());
|
||||||
|
if (!Files.exists(link)) {
|
||||||
|
try {
|
||||||
|
Files.createSymbolicLink(link, target);
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
this.tmxMaps = new ArrayList<TMXMap>();
|
this.tmxMaps = new ArrayList<TMXMap>();
|
||||||
|
|
||||||
|
|||||||
@@ -429,20 +429,24 @@ public class WorkspaceActions {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized void putValue(String key, Object value) {
|
public void putValue(String key, Object value) {
|
||||||
PropertyChangeEvent event = new PropertyChangeEvent(this, key, values.get(key), value);
|
PropertyChangeEvent event = new PropertyChangeEvent(this, key, values.get(key), value);
|
||||||
values.put(key, value);
|
values.put(key, value);
|
||||||
for (PropertyChangeListener l : listeners) {
|
synchronized(listeners) {
|
||||||
l.propertyChange(event);
|
for (PropertyChangeListener l : listeners) {
|
||||||
|
l.propertyChange(event);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized void setEnabled(boolean b) {
|
public void setEnabled(boolean b) {
|
||||||
PropertyChangeEvent event = new PropertyChangeEvent(this, "enabled", isEnabled(), b);
|
PropertyChangeEvent event = new PropertyChangeEvent(this, "enabled", isEnabled(), b);
|
||||||
enabled = b;
|
enabled = b;
|
||||||
for (PropertyChangeListener l : listeners) {
|
synchronized(listeners) {
|
||||||
l.propertyChange(event);
|
for (PropertyChangeListener l : listeners) {
|
||||||
|
l.propertyChange(event);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -454,13 +458,17 @@ public class WorkspaceActions {
|
|||||||
private Set<PropertyChangeListener> listeners = new HashSet<PropertyChangeListener>();
|
private Set<PropertyChangeListener> listeners = new HashSet<PropertyChangeListener>();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized void addPropertyChangeListener(PropertyChangeListener listener) {
|
public void addPropertyChangeListener(PropertyChangeListener listener) {
|
||||||
listeners.add(listener);
|
synchronized(listeners) {
|
||||||
|
listeners.add(listener);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized void removePropertyChangeListener(PropertyChangeListener listener) {
|
public void removePropertyChangeListener(PropertyChangeListener listener) {
|
||||||
listeners.remove(listener);
|
synchronized(listeners) {
|
||||||
|
listeners.remove(listener);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -91,6 +91,7 @@ public class DialogueEditor extends JSONElementEditor {
|
|||||||
private JPanel rewardsParamsPane;
|
private JPanel rewardsParamsPane;
|
||||||
private MyComboBox rewardMap;
|
private MyComboBox rewardMap;
|
||||||
private JTextField rewardObjId;
|
private JTextField rewardObjId;
|
||||||
|
private JComboBox rewardObjIdCombo;
|
||||||
private MyComboBox rewardObj;
|
private MyComboBox rewardObj;
|
||||||
private JSpinner rewardValue;
|
private JSpinner rewardValue;
|
||||||
|
|
||||||
@@ -360,6 +361,14 @@ public class DialogueEditor extends JSONElementEditor {
|
|||||||
case deactivateMapObjectGroup:
|
case deactivateMapObjectGroup:
|
||||||
rewardMap = addMapBox(pane, ((Dialogue)target).getProject(), "Map Name: ", reward.map, writable, listener);
|
rewardMap = addMapBox(pane, ((Dialogue)target).getProject(), "Map Name: ", reward.map, writable, listener);
|
||||||
rewardObjId = addTextField(pane, "Group ID: ", reward.reward_obj_id, writable, listener);
|
rewardObjId = addTextField(pane, "Group ID: ", reward.reward_obj_id, writable, listener);
|
||||||
|
rewardObjIdCombo = null;
|
||||||
|
rewardObj = null;
|
||||||
|
rewardValue = null;
|
||||||
|
break;
|
||||||
|
case changeMapFilter:
|
||||||
|
rewardMap = addMapBox(pane, ((Dialogue)target).getProject(), "Map Name: ", reward.map, writable, listener);
|
||||||
|
rewardObjId = null;
|
||||||
|
rewardObjIdCombo = addEnumValueBox(pane, "Color Filter", TMXMap.ColorFilter.values(), reward.reward_obj_id != null ? TMXMap.ColorFilter.valueOf(reward.reward_obj_id) : TMXMap.ColorFilter.none, writable, listener);
|
||||||
rewardObj = null;
|
rewardObj = null;
|
||||||
rewardValue = null;
|
rewardValue = null;
|
||||||
break;
|
break;
|
||||||
@@ -368,30 +377,35 @@ public class DialogueEditor extends JSONElementEditor {
|
|||||||
case spawnAll:
|
case spawnAll:
|
||||||
rewardMap = addMapBox(pane, ((Dialogue)target).getProject(), "Map Name: ", reward.map, writable, listener);
|
rewardMap = addMapBox(pane, ((Dialogue)target).getProject(), "Map Name: ", reward.map, writable, listener);
|
||||||
rewardObjId = addTextField(pane, "Area ID: ", reward.reward_obj_id, writable, listener);
|
rewardObjId = addTextField(pane, "Area ID: ", reward.reward_obj_id, writable, listener);
|
||||||
|
rewardObjIdCombo = null;
|
||||||
rewardObj = null;
|
rewardObj = null;
|
||||||
rewardValue = null;
|
rewardValue = null;
|
||||||
break;
|
break;
|
||||||
case actorCondition:
|
case actorCondition:
|
||||||
rewardMap = null;
|
rewardMap = null;
|
||||||
rewardObjId = null;
|
rewardObjId = null;
|
||||||
|
rewardObjIdCombo = null;
|
||||||
rewardObj = addActorConditionBox(pane, ((Dialogue)target).getProject(), "Actor Condition: ", (ActorCondition) reward.reward_obj, writable, listener);
|
rewardObj = addActorConditionBox(pane, ((Dialogue)target).getProject(), "Actor Condition: ", (ActorCondition) reward.reward_obj, writable, listener);
|
||||||
rewardValue = addIntegerField(pane, "Duration: ", reward.reward_value, false, writable, listener);
|
rewardValue = addIntegerField(pane, "Duration: ", reward.reward_value, false, writable, listener);
|
||||||
break;
|
break;
|
||||||
case alignmentChange:
|
case alignmentChange:
|
||||||
rewardMap = null;
|
rewardMap = null;
|
||||||
rewardObjId = addTextField(pane, "Faction: ", reward.reward_obj_id, writable, listener);
|
rewardObjId = addTextField(pane, "Faction: ", reward.reward_obj_id, writable, listener);
|
||||||
|
rewardObjIdCombo = null;
|
||||||
rewardObj = null;
|
rewardObj = null;
|
||||||
rewardValue = addIntegerField(pane, "Value: ", reward.reward_value, true, writable, listener);
|
rewardValue = addIntegerField(pane, "Value: ", reward.reward_value, true, writable, listener);
|
||||||
break;
|
break;
|
||||||
case createTimer:
|
case createTimer:
|
||||||
rewardMap = null;
|
rewardMap = null;
|
||||||
rewardObjId = addTextField(pane, "Timer ID: ", reward.reward_obj_id, writable, listener);
|
rewardObjId = addTextField(pane, "Timer ID: ", reward.reward_obj_id, writable, listener);
|
||||||
|
rewardObjIdCombo = null;
|
||||||
rewardObj = null;
|
rewardObj = null;
|
||||||
rewardValue = null;
|
rewardValue = null;
|
||||||
break;
|
break;
|
||||||
case dropList:
|
case dropList:
|
||||||
rewardMap = null;
|
rewardMap = null;
|
||||||
rewardObjId = null;
|
rewardObjId = null;
|
||||||
|
rewardObjIdCombo = null;
|
||||||
rewardObj = addDroplistBox(pane, ((Dialogue)target).getProject(), "Droplist: ", (Droplist) reward.reward_obj, writable, listener);
|
rewardObj = addDroplistBox(pane, ((Dialogue)target).getProject(), "Droplist: ", (Droplist) reward.reward_obj, writable, listener);
|
||||||
rewardValue = null;
|
rewardValue = null;
|
||||||
break;
|
break;
|
||||||
@@ -404,12 +418,14 @@ public class DialogueEditor extends JSONElementEditor {
|
|||||||
case questProgress:
|
case questProgress:
|
||||||
rewardMap = null;
|
rewardMap = null;
|
||||||
rewardObjId = null;
|
rewardObjId = null;
|
||||||
|
rewardObjIdCombo = null;
|
||||||
rewardObj = addQuestBox(pane, ((Dialogue)target).getProject(), "Quest: ", (Quest) reward.reward_obj, writable, listener);
|
rewardObj = addQuestBox(pane, ((Dialogue)target).getProject(), "Quest: ", (Quest) reward.reward_obj, writable, listener);
|
||||||
rewardValue = addIntegerField(pane, "Step ID: ", reward.reward_value, false, writable, listener);
|
rewardValue = addIntegerField(pane, "Step ID: ", reward.reward_value, false, writable, listener);
|
||||||
break;
|
break;
|
||||||
case skillIncrease:
|
case skillIncrease:
|
||||||
rewardMap = null;
|
rewardMap = null;
|
||||||
rewardObjId = addTextField(pane, "Skill ID: ", reward.reward_obj_id, writable, listener);
|
rewardObjId = addTextField(pane, "Skill ID: ", reward.reward_obj_id, writable, listener);
|
||||||
|
rewardObjIdCombo = null;
|
||||||
rewardObj = null;
|
rewardObj = null;
|
||||||
rewardValue = null;
|
rewardValue = null;
|
||||||
break;
|
break;
|
||||||
@@ -819,6 +835,10 @@ public class DialogueEditor extends JSONElementEditor {
|
|||||||
label.setText("Respawn all monsters in spawnarea area "+rewardObjDesc+" on map "+reward.map_name);
|
label.setText("Respawn all monsters in spawnarea area "+rewardObjDesc+" on map "+reward.map_name);
|
||||||
label.setIcon(new ImageIcon(DefaultIcons.getNPCIcon()));
|
label.setIcon(new ImageIcon(DefaultIcons.getNPCIcon()));
|
||||||
break;
|
break;
|
||||||
|
case changeMapFilter:
|
||||||
|
label.setText("Change map filter to "+rewardObjDesc+" on map "+reward.map_name);
|
||||||
|
label.setIcon(new ImageIcon(DefaultIcons.getReplaceIcon()));
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
label.setText("New, undefined reward");
|
label.setText("New, undefined reward");
|
||||||
@@ -1100,6 +1120,9 @@ public class DialogueEditor extends JSONElementEditor {
|
|||||||
} else if (source == rewardObjId) {
|
} else if (source == rewardObjId) {
|
||||||
selectedReward.reward_obj_id = rewardObjId.getText();
|
selectedReward.reward_obj_id = rewardObjId.getText();
|
||||||
rewardsListModel.itemChanged(selectedReward);
|
rewardsListModel.itemChanged(selectedReward);
|
||||||
|
} else if (source == rewardObjIdCombo) {
|
||||||
|
selectedReward.reward_obj_id = rewardObjIdCombo.getSelectedItem().toString();
|
||||||
|
rewardsListModel.itemChanged(selectedReward);
|
||||||
} else if (source == rewardObj) {
|
} else if (source == rewardObj) {
|
||||||
if (selectedReward.reward_obj != null) {
|
if (selectedReward.reward_obj != null) {
|
||||||
selectedReward.reward_obj.removeBacklink(dialogue);
|
selectedReward.reward_obj.removeBacklink(dialogue);
|
||||||
|
|||||||
@@ -92,6 +92,15 @@ public class MapColorFilters {
|
|||||||
0.00f, 0.00f, 0.00f, 1.0f, 0.0f
|
0.00f, 0.00f, 0.00f, 1.0f, 0.0f
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
case none:
|
||||||
|
f=1f;
|
||||||
|
newComp = new MatrixComposite(new float[]{
|
||||||
|
f, 0.00f, 0.00f, 0.0f, 0.0f,
|
||||||
|
0.00f, f, 0.00f, 0.0f, 0.0f,
|
||||||
|
0.00f, 0.00f, f, 0.0f, 0.0f,
|
||||||
|
0.00f, 0.00f, 0.00f, 1.0f, 0.0f
|
||||||
|
});
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import java.awt.event.MouseAdapter;
|
|||||||
import java.awt.event.MouseEvent;
|
import java.awt.event.MouseEvent;
|
||||||
import java.awt.event.MouseMotionAdapter;
|
import java.awt.event.MouseMotionAdapter;
|
||||||
import java.awt.event.MouseMotionListener;
|
import java.awt.event.MouseMotionListener;
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -1604,6 +1605,17 @@ public class TMXMapEditor extends Editor {
|
|||||||
savePane.add(gdeIcon, JideBoxLayout.FIX);
|
savePane.add(gdeIcon, JideBoxLayout.FIX);
|
||||||
savePane.setLayout(new JideBoxLayout(savePane, JideBoxLayout.LINE_AXIS, 6));
|
savePane.setLayout(new JideBoxLayout(savePane, JideBoxLayout.LINE_AXIS, 6));
|
||||||
if (map.writable) {
|
if (map.writable) {
|
||||||
|
gdeIcon.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
try {
|
||||||
|
Runtime.getRuntime().exec(new String[]{"tiled",map.tmxFile.getAbsolutePath()});
|
||||||
|
} catch (IOException e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
if (map.getDataType() == GameSource.Type.altered) {
|
if (map.getDataType() == GameSource.Type.altered) {
|
||||||
savePane.add(message = new JLabel(ALTERED_MESSAGE), JideBoxLayout.FIX);
|
savePane.add(message = new JLabel(ALTERED_MESSAGE), JideBoxLayout.FIX);
|
||||||
} else if (map.getDataType() == GameSource.Type.created) {
|
} else if (map.getDataType() == GameSource.Type.created) {
|
||||||
|
|||||||
Reference in New Issue
Block a user