animal,legs,size
dog,4,medium
cat,4,small
spider,8,small
t-rex,2,large
animal,eggs
dog,no
cat,no
parrot,yes
package data.scripts.world;
import com.fs.starfarer.api.Global;
import java.util.Iterator;
import org.apache.log4j.Logger;
import org.json.JSONArray;
import org.json.JSONObject;
public class TestScript {
public static Logger log = Global.getLogger(TestScript.class);
public static String testFile = "test_csv.csv";
public static void execute()
{
try {
JSONArray csv = Global.getSettings().getMergedSpreadsheetDataForMod("animal", testFile, "histidine_test");
for(int x = 0; x < csv.length(); x++)
{
JSONObject row = csv.getJSONObject(x);
log.info("Loading data for animal: " + row.getString("animal"));
log.info("\tColumn count: " + row.names().length());
Iterator columns = row.keys();
while( columns.hasNext() ) {
String column = (String)columns.next();
if (column.equals("fs_rowSource")) continue;
if (column.equals("animal")) continue;
log.info("\tValue of '" + column + "': " + row.getString(column));
}
}
} catch (Exception ex) {
log.error(ex);
}
}
}
2112180 [Thread-4] INFO org.lazywizard.console.Console - > runcode data.scripts.world.TestScript.execute()
2112994 [Thread-4] INFO com.fs.starfarer.loading.LoadingUtils - Loading CSV data from [DIRECTORY: D:\Program Files\Fractal Softworks\Starsector\starsector-core\..\mods\testmod]
2112995 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: dog
2112995 [Thread-4] INFO data.scripts.world.TestScript - Column count: 4
2112996 [Thread-4] INFO data.scripts.world.TestScript - Value of 'legs': 4
2112996 [Thread-4] INFO data.scripts.world.TestScript - Value of 'size': medium
2112996 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: cat
2112996 [Thread-4] INFO data.scripts.world.TestScript - Column count: 4
2112996 [Thread-4] INFO data.scripts.world.TestScript - Value of 'legs': 4
2112997 [Thread-4] INFO data.scripts.world.TestScript - Value of 'size': small
2112997 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: spider
2112997 [Thread-4] INFO data.scripts.world.TestScript - Column count: 4
2112997 [Thread-4] INFO data.scripts.world.TestScript - Value of 'legs': 8
2112997 [Thread-4] INFO data.scripts.world.TestScript - Value of 'size': small
2112997 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: t-rex
2112997 [Thread-4] INFO data.scripts.world.TestScript - Column count: 4
2112997 [Thread-4] INFO data.scripts.world.TestScript - Value of 'legs': 2
2112998 [Thread-4] INFO data.scripts.world.TestScript - Value of 'size': large
190001 [Thread-4] INFO org.lazywizard.console.Console - > runcode data.scripts.world.TestScript.execute()
190707 [Thread-4] INFO com.fs.starfarer.loading.LoadingUtils - Loading CSV data from [DIRECTORY: D:\Program Files\Fractal Softworks\Starsector\starsector-core\..\mods\testmod]
190708 [Thread-4] INFO com.fs.starfarer.loading.LoadingUtils - Loading CSV data from [DIRECTORY: D:\Program Files\Fractal Softworks\Starsector\starsector-core\..\mods\testmod2]
190708 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: spider
190708 [Thread-4] INFO data.scripts.world.TestScript - Column count: 4
190709 [Thread-4] INFO data.scripts.world.TestScript - Value of 'legs': 8
190709 [Thread-4] INFO data.scripts.world.TestScript - Value of 'size': small
190709 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: t-rex
190709 [Thread-4] INFO data.scripts.world.TestScript - Column count: 4
190710 [Thread-4] INFO data.scripts.world.TestScript - Value of 'legs': 2
190710 [Thread-4] INFO data.scripts.world.TestScript - Value of 'size': large
190710 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: dog
190710 [Thread-4] INFO data.scripts.world.TestScript - Column count: 3
190710 [Thread-4] INFO data.scripts.world.TestScript - Value of 'eggs': no
190710 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: cat
190710 [Thread-4] INFO data.scripts.world.TestScript - Column count: 3
190710 [Thread-4] INFO data.scripts.world.TestScript - Value of 'eggs': no
190710 [Thread-4] INFO data.scripts.world.TestScript - Loading data for animal: parrot
190710 [Thread-4] INFO data.scripts.world.TestScript - Column count: 3
190711 [Thread-4] INFO data.scripts.world.TestScript - Value of 'eggs': yes
Can mods merge arbitrary .jsons in 0.8.1, or is that only for vanilla files?
{
"foo":[
["one", "two", "three"]
]
}
{
"foo":[
["aa", "bb", "cc"]
]
}
"foo":[
["one", "two", "three"],
["aa", "bb", "cc"]
]
"foo":[
["one", "two", "three", "aa", "bb", "cc"]
]
"foo":[
["aa", "bb", "cc"]
]