diff --git a/dat/ship.xml b/dat/ship.xml
index 0f7e9f0..9cc39f4 100644
--- a/dat/ship.xml
+++ b/dat/ship.xml
@@ -272,4 +272,41 @@ Used by security agencies all over the universe for it's reliability and availab
Ion Cannon
+
+goddard
+minimal
+engine
+3
+11500000
+Goddard Inc.
+1001
+The archaic design of the Goddard is decieving. Although it takes the shape of traditional flying intra-planet vessels, it's very suited for space travel.
+Production is entirely done on Zhiru en the Goddard system by Goddard Inc, the sole providor and dealer in Goddards. Over time, specialization and improvements on the original time have kept it very competitive in the market. It's a classic of space.
+
+200
+80
+250
+
+
+800
+500
+2000
+330
+90
+1700
+
+
+52
+4350
+500
+250
+60
+
+
+Heavy Ion Turret
+Laser Turret
+Headhunter Launcher
+Headhunter
+
+
diff --git a/dat/start.xml b/dat/start.xml
index f2165f3..95c9de5 100644
--- a/dat/start.xml
+++ b/dat/start.xml
@@ -1,7 +1,7 @@
Dark Tides
-Lancelot
+Goddard
500000
1500000
diff --git a/gfx/ship/goddard.png b/gfx/ship/goddard.png
new file mode 100644
index 0000000..fb1290e
Binary files /dev/null and b/gfx/ship/goddard.png differ
diff --git a/gfx/ship/goddard_target.png b/gfx/ship/goddard_target.png
new file mode 100644
index 0000000..2bc2c5e
Binary files /dev/null and b/gfx/ship/goddard_target.png differ
diff --git a/utils/resedit/space.py b/utils/resedit/space.py
index a9a1255..82bb606 100644
--- a/utils/resedit/space.py
+++ b/utils/resedit/space.py
@@ -67,7 +67,7 @@ class Space:
hooks = {
"winSystems":["destroy",self.__done],
"treSystems":["button-release-event", self.__supdate],
- "inpName":["changed", self.__supdate],
+ "inpName":["changed", self.__seditname],
"butDone":["clicked", self.__done],
"butSave":["clicked",self.saveSystems],
"butZoomIn":["clicked", self.__space_zoomin],
@@ -276,6 +276,37 @@ class Space:
def __pwidget(self, wgtname):
return self.pwtree.get_widget(wgtname)
+ def __seditname(self, wgt=None, index=None, iter=None):
+ if self.modifyname == 1:
+ return
+ sys_name = self.__swidget("inpName").get_text()
+ if sys_name == "":
+ return
+
+ # Renamed the current system.
+ if sys_name != self.cur_system:
+ self.systems[sys_name] = self.systems[self.cur_system] # Copy it over.
+ model = self.__swidget("treSystems").get_model()
+
+ # Must rename the node in treeview.
+ for i in model:
+ if i[0] == self.cur_system:
+ i[0] = sys_name
+ break
+
+ # Update jump paths.
+ for key, value in self.systems.items():
+ i = 0
+ for jump in value["jumps"]:
+ if jump == self.cur_system:
+ self.systems[key]["jumps"].pop(i)
+ self.systems[key]["jumps"].append(sys_name)
+ i = i+1
+
+ # Delete the old system and change current to it.
+ del self.systems[self.cur_system] # Get rid of the old one.
+ self.cur_system = sys_name # Now use self.cur_system again.
+
def __supdate(self, wgt=None, index=None, iter=None):
"""
Update the star system window
@@ -290,6 +321,7 @@ class Space:
system = self.systems[self.cur_system]
# Load it all.
+ self.modifyname = 1 # Ugly hack to preven rename triggering another sstore.
dic = {
"inpName":self.cur_system,
"spiInterference":system["general"]["interference"],
@@ -299,6 +331,7 @@ class Space:
}
for key, value in dic.items():
self.__swidget(key).set_text(str(value))
+ self.modifyname = 0
# Load nebulae properties.
try:
@@ -466,33 +499,9 @@ class Space:
Store the system stuff.
'''
sys_name = self.__swidget("inpName").get_text()
- if sys_name == "" or self.cur_system == self.__curSystem():
+ if sys_name == "" or self.cur_system == self.__curSystem() or self.modifyname == 1:
return
- # Renamed the current system.
- if sys_name != self.cur_system:
- self.systems[sys_name] = self.systems[self.cur_system] # Copy it over.
- model = self.__swidget("treSystems").get_model()
-
- # Must rename the node in the treeview.
- for i in model:
- if i[0] == self.cur_system:
- i[0] = sys_name
- break
-
- # Update the jump paths.
- for key, value in self.systems.items():
- i = 0
- for jump in value["jumps"]:
- if jump == self.cur_system:
- self.systems[key]["jumps"].pop(i)
- self.systems[key]["Jumps"].append(sys_name)
- i = i+1
-
- # Delete the old system and change current to it.
- del self.systems[self.cur_system] # Get rid of the old one.
- self.cur_system = sys_name # Now use self.cur_system again.
-
try:
system = self.systems[self.cur_system]
except: