public static void PostScreenshot(Texture2D tex, FBManagerDelegate callback = null) { byte[] screenshot = tex.EncodeToPNG(); WWWForm form = new WWWForm(); form.AddBinaryData("image", screenshot); form.AddField("message", GameStrings.GetLocalizedString(GameStrings.FB_ShareScreenshot_message)); if (callback != null) { Instance.callbacks[Instance.OnFBSendScreenshot] = callback; } if (FB.IsLoggedIn) { FB.API("me/photos", Facebook.HttpMethod.POST, Instance.OnFBSendScreenshot, form); SendToFlurryAboutScreenshot(); } else { Instance.formWithScreenshot = form; FB.Login(mInstance.permissions, Instance.OnFBLoginBeforePostScreenshotEvent); } }
public static void API(string query, HttpMethod method, FBManagerDelegate callback = null, Dictionary <string, string> formData = null) { if (callback != null) { Instance.callbacks[Instance.OnFBApiEvent] = callback; } FB.API(query, method, Instance.OnFBApiEvent, formData); }
public static void Login(FBManagerDelegate callback = null) { if (callback != null) { Instance.callbacks[Instance.OnFBLoginEvent] = callback; } FB.Login(mInstance.permissions, Instance.OnFBLoginEvent); }
public static void RemoveDelegate(FBManagerDelegate callback) { foreach (FacebookDelegate del in Instance.callbacks.Keys) { if (Instance.callbacks[del] == callback) { Instance.callbacks.Remove(del); break; } } }
void CallAndRemove(FacebookDelegate fbDelegate, FBResult result) { if (callbacks.ContainsKey(fbDelegate)) { FBManagerDelegate callback = callbacks[fbDelegate]; if (callback != null) { callback(result); RemoveDelegate(callback); } } }