WIP minetest <-> laby import/export
- currently possible to export a laby into minetest - start of a lua content parser to import .we into lab
This commit is contained in:
32
java/org/artisanlogiciel/lua/CharProvider.java
Normal file
32
java/org/artisanlogiciel/lua/CharProvider.java
Normal file
@@ -0,0 +1,32 @@
|
||||
package org.artisanlogiciel.lua;
|
||||
|
||||
public class CharProvider {
|
||||
|
||||
String input;
|
||||
int current;
|
||||
|
||||
public CharProvider(String input) {
|
||||
this.input = input;
|
||||
current = 0;
|
||||
}
|
||||
|
||||
public char getNextchar()
|
||||
{
|
||||
int i = current;
|
||||
if ( input.length() > current) {
|
||||
current++;
|
||||
return input.charAt(i);
|
||||
}
|
||||
else
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
public void pushBackChar(char c)
|
||||
{
|
||||
System.out.print('*');
|
||||
current--;
|
||||
}
|
||||
|
||||
}
|
||||
17
java/org/artisanlogiciel/lua/LuaNumber.java
Normal file
17
java/org/artisanlogiciel/lua/LuaNumber.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package org.artisanlogiciel.lua;
|
||||
|
||||
public class LuaNumber
|
||||
extends LuaObject {
|
||||
|
||||
int number;
|
||||
|
||||
LuaNumber(int number)
|
||||
{
|
||||
this.number = number;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "" + number ;
|
||||
}
|
||||
}
|
||||
4
java/org/artisanlogiciel/lua/LuaObject.java
Normal file
4
java/org/artisanlogiciel/lua/LuaObject.java
Normal file
@@ -0,0 +1,4 @@
|
||||
package org.artisanlogiciel.lua;
|
||||
|
||||
public class LuaObject {
|
||||
}
|
||||
43
java/org/artisanlogiciel/lua/LuaSequence.java
Normal file
43
java/org/artisanlogiciel/lua/LuaSequence.java
Normal file
@@ -0,0 +1,43 @@
|
||||
package org.artisanlogiciel.lua;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class LuaSequence
|
||||
extends LuaObject{
|
||||
List<LuaObject> items;
|
||||
|
||||
public LuaSequence()
|
||||
{
|
||||
items = new ArrayList<>();
|
||||
}
|
||||
|
||||
void addObject(LuaObject object)
|
||||
{
|
||||
if ( object == null )
|
||||
{
|
||||
System.err.println("adding null tuple");
|
||||
}
|
||||
items.add(object);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
StringBuffer buffer = new StringBuffer();
|
||||
buffer.append('{');
|
||||
if (items.size() > 0) {
|
||||
buffer.append(items.get(0).toString());
|
||||
if (items.size() > 1) {
|
||||
for (int i = 1; i < items.size(); i ++)
|
||||
{
|
||||
buffer.append(',');
|
||||
buffer.append(items.get(i).toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
buffer.append('}');
|
||||
return buffer.toString();
|
||||
}
|
||||
}
|
||||
17
java/org/artisanlogiciel/lua/LuaString.java
Normal file
17
java/org/artisanlogiciel/lua/LuaString.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package org.artisanlogiciel.lua;
|
||||
|
||||
public class LuaString
|
||||
extends LuaObject
|
||||
{
|
||||
String string;
|
||||
|
||||
public LuaString(StringBuffer stringBuffer)
|
||||
{
|
||||
string = stringBuffer.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return '"' + string + '"' ;
|
||||
}
|
||||
}
|
||||
32
java/org/artisanlogiciel/lua/LuaTuple.java
Normal file
32
java/org/artisanlogiciel/lua/LuaTuple.java
Normal file
@@ -0,0 +1,32 @@
|
||||
package org.artisanlogiciel.lua;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class LuaTuple
|
||||
extends LuaObject
|
||||
{
|
||||
List<LuaObject> items;
|
||||
|
||||
|
||||
public LuaTuple() {
|
||||
this.items = new ArrayList<>(2);
|
||||
}
|
||||
|
||||
public LuaObject addItem(LuaObject item)
|
||||
{
|
||||
items.add(item);
|
||||
return item;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
StringBuffer buffer = new StringBuffer();
|
||||
buffer.append('[');
|
||||
buffer.append(items.get(0).toString());
|
||||
buffer.append("]");
|
||||
buffer.append('=');
|
||||
buffer.append(items.get(1).toString());
|
||||
return buffer.toString();
|
||||
}
|
||||
}
|
||||
230
java/org/artisanlogiciel/lua/Parser.java
Normal file
230
java/org/artisanlogiciel/lua/Parser.java
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user