Browse Source

[godot] Clean-up SpineEventData and SpineEvent.

badlogic 3 years ago
parent
commit
45e087feb3

+ 1 - 1
spine-godot/spine_godot/SpineEvent.cpp

@@ -55,7 +55,7 @@ SpineEvent::~SpineEvent() {
 Ref<SpineEventData> SpineEvent::get_data() {
 	SPINE_CHECK(event, nullptr)
 	Ref<SpineEventData> event_data(memnew(SpineEventData));
-	event_data->set_spine_object(&(event->getData()));
+	event_data->set_spine_object((spine::EventData*)&(event->getData()));
 	return event_data;
 }
 

+ 6 - 6
spine-godot/spine_godot/SpineEvent.h

@@ -45,7 +45,7 @@ public:
 	SpineEvent();
 	~SpineEvent();
 
-	void set_spine_object(spine::Event *e) { event = e; }
+	void set_spine_object(spine::Event *_event) { event = _event; }
 
 	spine::Event *get_spine_object() const { return event; }
 	
@@ -55,23 +55,23 @@ public:
 
 	int get_int_value();
 	
-	void set_int_value(int inValue);
+	void set_int_value(int v);
 
 	float get_float_value();
 	
-	void set_float_value(float inValue);
+	void set_float_value(float v);
 
 	String get_string_value();
 	
-	void set_string_value(const String &inValue);
+	void set_string_value(const String &v);
 
 	float get_volume();
 	
-	void set_volume(float inValue);
+	void set_volume(float v);
 
 	float get_balance();
 	
-	void set_balance(float inValue);
+	void set_balance(float v);
 };
 
 #endif//GODOT_SPINEEVENT_H

+ 72 - 2
spine-godot/spine_godot/SpineEventData.cpp

@@ -28,9 +28,79 @@
  *****************************************************************************/
 
 #include "SpineEventData.h"
+#include "common.h"
 
 void SpineEventData::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("get_event_name"), &SpineEventData::get_event_name);
+ ClassDB::bind_method(D_METHOD("get_int_value"), &SpineEventData::get_int_value);
+ ClassDB::bind_method(D_METHOD("set_int_value", "v"), &SpineEventData::set_int_value);
+ ClassDB::bind_method(D_METHOD("get_float_value"), &SpineEventData::get_float_value);
+ ClassDB::bind_method(D_METHOD("set_float_value", "v"), &SpineEventData::set_float_value);
+ ClassDB::bind_method(D_METHOD("get_string_value"), &SpineEventData::get_string_value);
+ ClassDB::bind_method(D_METHOD("set_string_value", "v"), &SpineEventData::set_string_value);
+ ClassDB::bind_method(D_METHOD("get_volume"), &SpineEventData::get_volume);
+ ClassDB::bind_method(D_METHOD("set_volume", "v"), &SpineEventData::set_volume);
+ ClassDB::bind_method(D_METHOD("get_balance"), &SpineEventData::get_balance);
+ ClassDB::bind_method(D_METHOD("set_balance", "v"), &SpineEventData::set_balance);
 }
 
-SpineEventData::SpineEventData() : event_data(NULL) {}
-SpineEventData::~SpineEventData() {}
+SpineEventData::SpineEventData() : event_data(nullptr) {
+}
+
+SpineEventData::~SpineEventData() {
+}
+
+String SpineEventData::get_event_name() {
+ SPINE_CHECK(event_data, "")
+ return event_data->getName().buffer();
+}
+
+int SpineEventData::get_int_value() {
+ SPINE_CHECK(event_data, 0)
+ return event_data->getIntValue();
+}
+
+void SpineEventData::set_int_value(int v) {
+ SPINE_CHECK(event_data,)
+ event_data->setIntValue(v);
+}
+
+float SpineEventData::get_float_value() {
+ SPINE_CHECK(event_data, 0)
+ return event_data->getFloatValue();
+}
+
+void SpineEventData::set_float_value(float v) {
+ SPINE_CHECK(event_data,)
+ event_data->setFloatValue(v);
+}
+
+String SpineEventData::get_string_value() {
+ SPINE_CHECK(event_data, "")
+ return event_data->getStringValue().buffer();
+}
+
+void SpineEventData::set_string_value(const String &v) {
+ SPINE_CHECK(event_data,)
+ event_data->setStringValue(spine::String(v.utf8()));
+}
+
+float SpineEventData::get_volume() {
+ SPINE_CHECK(event_data, 0)
+ return event_data->getVolume();
+}
+
+void SpineEventData::set_volume(float v) {
+ SPINE_CHECK(event_data,)
+ event_data->setVolume(v);
+}
+
+float SpineEventData::get_balance() {
+ SPINE_CHECK(event_data, 0)
+ return event_data->getBalance();
+}
+
+void SpineEventData::set_balance(float v) {
+ SPINE_CHECK(event_data,)
+ event_data->setBalance(v);
+}

+ 26 - 7
spine-godot/spine_godot/SpineEventData.h

@@ -40,18 +40,37 @@ protected:
 	static void _bind_methods();
 
 private:
-	const spine::EventData *event_data;
+	spine::EventData *event_data;
 
 public:
 	SpineEventData();
 	~SpineEventData();
 
-	inline void set_spine_object(const spine::EventData *e) {
-		event_data = e;
-	}
-	inline const spine::EventData *get_spine_object() {
-		return event_data;
-	}
+	void set_spine_object(spine::EventData *_event_data) { event_data = _event_data; }
+
+	spine::EventData *get_spine_object() const { return event_data; }
+
+	String get_event_name();
+
+	int get_int_value();
+	
+	void set_int_value(int v);
+
+	float get_float_value();
+	
+	void set_float_value(float v);
+
+	String get_string_value();
+	
+	void set_string_value(const String &v);
+
+	float get_volume();
+	
+	void set_volume(float v);
+
+	float get_balance();
+	
+	void set_balance(float v);
 };
 
 #endif//GODOT_SPINEEVENTDATA_H