Bläddra i källkod

-Fixed bug in "extends"

Juan Linietsky 11 år sedan
förälder
incheckning
71355aaab7

+ 10 - 0
modules/gdscript/gd_compiler.cpp

@@ -1321,6 +1321,16 @@ Error GDCompiler::_parse_class(GDScript *p_script,GDScript *p_owner,const GDPars
 		if (path!="") {
 			//path (and optionally subclasses)
 
+			if (path.is_rel_path()) {
+
+				String base = p_script->get_path();
+				if (base=="" || base.is_rel_path()) {
+					_set_error("Could not resolve relative path for parent class: "+path,p_class);
+					return ERR_FILE_NOT_FOUND;
+				}
+				path=base.get_base_dir().plus_file(path);
+			}
+
 			script = ResourceLoader::load(path);
 			if (script.is_null()) {
 				_set_error("Could not load base class: "+path,p_class);

+ 2 - 0
modules/gdscript/gd_script.cpp

@@ -389,6 +389,8 @@ Variant GDFunction::call(GDInstance *p_instance,const Variant **p_args, int p_ar
 						}
 
 					}
+
+
 				} else {
 
 					GDNativeClass *nc= obj_B->cast_to<GDNativeClass>();

+ 0 - 110
platform/android/java/src/com/android/godot/GodotPaymentV3.java

@@ -1,110 +0,0 @@
-package com.android.godot;
-
-
-import org.json.JSONObject;
-
-import android.app.Activity;
-import android.util.Log;
-
-
-public class GodotPaymentV3 extends Godot.SingletonBase {
-
-	private Godot activity;
-
-	private Integer purchaseCallbackId = 0;
-
-	private String accessToken;
-	
-	private String purchaseValidationUrlPrefix;
-	
-	private String transactionId;
-
-	public void purchase( String _sku, String _transactionId) {
-		final String sku = _sku;
-		final String transactionId = _transactionId;
-		activity.getPaymentsManager().setBaseSingleton(this);
-		activity.runOnUiThread(new Runnable() {
-			@Override
-			public void run() {
-				activity.getPaymentsManager().requestPurchase(sku, transactionId);				
-			}
-		});
-	};
-	
-/*	public string requestPurchasedTicket(){
-	    activity.getPaymentsManager()
-	}
-
-*/
-    static public Godot.SingletonBase initialize(Activity p_activity) {
-
-        return new GodotPaymentV3(p_activity);
-    }
-
-	
-	public GodotPaymentV3(Activity p_activity) {
-
-		registerClass("GodotPayments", new String[] {"purchase", "setPurchaseCallbackId", "setPurchaseValidationUrlPrefix", "setTransactionId", "getSignature"});
-		activity=(Godot) p_activity;
-	}
-
-
-	private String signature;
-	public String getSignature(){
-	        return this.signature;
-	}
-	
-	
-	public void callbackSuccess(String ticket, String signature){
-	        Log.d(this.getClass().getName(), "PRE-Send callback to purchase success");
-            GodotLib.calldeferred(purchaseCallbackId, "purchase_success", new Object[]{ticket, signature});
-        	Log.d(this.getClass().getName(), "POST-Send callback to purchase success");
-	}
-	
-	public void callbackFail(){
-                GodotLib.calldeferred(purchaseCallbackId, "purchase_fail", new Object[]{});
-//                GodotLib.callobject(purchaseCallbackId, "purchase_fail", new Object[]{});
-	}
-	
-	public void callbackCancel(){
-		GodotLib.calldeferred(purchaseCallbackId, "purchase_cancel", new Object[]{});
-//		GodotLib.callobject(purchaseCallbackId, "purchase_cancel", new Object[]{});
-	}
-	
-	public int getPurchaseCallbackId() {
-		return purchaseCallbackId;
-	}
-
-	public void setPurchaseCallbackId(int purchaseCallbackId) {
-		this.purchaseCallbackId = purchaseCallbackId;
-	}
-
-
-
-	public String getPurchaseValidationUrlPrefix(){
-		return this.purchaseValidationUrlPrefix ;
-	}
-
-	public void setPurchaseValidationUrlPrefix(String url){
-		this.purchaseValidationUrlPrefix = url;
-	}
-
-
-	public String getAccessToken() {
-		return accessToken;
-	}
-
-
-	public void setAccessToken(String accessToken) {
-		this.accessToken = accessToken;
-	}
-	
-	public void setTransactionId(String transactionId){
-		this.transactionId = transactionId;
-	}
-	
-	public String getTransactionId(){
-		return this.transactionId;
-	}
-	
-}

+ 5 - 1
platform/android/java_glue.cpp

@@ -354,6 +354,7 @@ public:
 	virtual Variant call(const StringName& p_method,const Variant** p_args,int p_argcount,Variant::CallError &r_error) {
 
 		//print_line("attempt to call "+String(p_method));
+		ERR_FAIL_COND_V(!instance,Variant());
 
 		r_error.error=Variant::CallError::CALL_OK;
 
@@ -519,7 +520,10 @@ public:
 	}
 
 
-	JNISingleton() {}
+	JNISingleton() {
+		instance=NULL;
+
+	}
 
 };