4using HeathenEngineering.SteamworksIntegration;
5using HeathenEngineering.SteamworksIntegration.API;
9public class Steam : MonoBehaviour
15 public UserGeneratedContentQueryManager
ugc;
29 BaseCore.IsOffline = !App.Client.LoggedOn || SteamSettings.behaviour ==
null;
45 ID_DLC.CursedManor =>
true,
61 if (achievement.Id ==
id.ToString())
63 if (achievement.IsAchieved)
71 EClass.
ui.Say(
"sys_acv".lang(achievement.Name), Resources.Load<Sprite>(
"Media/Graphics/Icon/Achievement/acv_" +
id));
72 SE.Play(
"achievement");
77 Debug.LogError(
"Error Achievement 1:" + ex);
85 Debug.LogError(
"Error Achievement 2:" + ex2);
87 Debug.Log(
"Achievement not found:" +
id);
94 achievement.ClearAchievement();
101 AchievementObject achievementObject =
Instance.
steamworks.settings.achievements.First((AchievementObject a) => a.Id ==
id.ToString());
102 if (achievementObject !=
null)
104 achievementObject.ClearAchievement();
105 achievementObject.Store();
122 UgcQuery myPublished = UgcQuery.GetMyPublished();
123 myPublished.SetReturnKeyValueTags(tags:
true);
129 Debug.Log(
"Creating Content2");
131 if (query.ResultsList !=
null)
133 Debug.Log(query.ResultsList.Count);
135 foreach (WorkshopItem results
in query.ResultsList)
137 if (results.keyValueTags ==
null)
141 StringKeyValuePair[] keyValueTags = results.keyValueTags;
142 for (
int i = 0; i < keyValueTags.Length; i++)
144 StringKeyValuePair stringKeyValuePair = keyValueTags[i];
145 if (stringKeyValuePair.key ==
"id" && stringKeyValuePair.value == baseModPackage.id && results.Owner.id == App.Client.Owner.id)
147 Debug.Log(
"Updating Content");
153 Debug.Log(
"Creating Content");
154 CreateItemData(baseModPackage).Create(
null,
null,
new WorkshopItemKeyValueTag[1]
156 new WorkshopItemKeyValueTag
159 value = baseModPackage.id
161 }, delegate(WorkshopItemDataCreateStatus result)
163 LayerProgress.completed =
true;
168 Debug.Log(
"error:" + result.errorMessage);
173 Debug.Log(
"created");
180 Debug.Log(
"Updating Content");
183 workshopItemData.publishedFileId = fileId;
184 workshopItemData.Update(delegate(WorkshopItemDataUpdateStatus result)
186 LayerProgress.completed =
true;
189 Dialog.Ok(
"mod_publish_error");
190 EClass.ui.Say(result.errorMessage);
191 Debug.Log(
"error:" + result.errorMessage);
195 Dialog.Ok(
"mod_updated");
196 Debug.Log(
"updated");
203 FileInfo fileInfo =
new FileInfo(p.
dirInfo.FullName +
"/preview.jpg");
204 DirectoryInfo directoryInfo =
new DirectoryInfo(p.
dirInfo.FullName);
205 WorkshopItemData workshopItemData =
default(WorkshopItemData);
206 workshopItemData.appId =
steamworks.settings.applicationId;
207 workshopItemData.title = p.
title;
209 workshopItemData.content = directoryInfo;
210 workshopItemData.preview = fileInfo;
211 workshopItemData.metadata = p.id ??
"";
212 workshopItemData.tags = p.
tags;
213 workshopItemData.visibility = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityPublic;
214 WorkshopItemData result = workshopItemData;
218 result.visibility = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityUnlisted;
221 result.visibility = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityPrivate;
224 result.visibility = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityFriendsOnly;
227 Debug.Log(App.Client.Owner.id);
228 Debug.Log(result.appId);
230 Debug.Log(directoryInfo.Exists +
"/" + directoryInfo.FullName);
231 Debug.Log(fileInfo.Exists +
"/" + fileInfo.FullName);
void UpdateMeta(bool updateOnly=false)
bool HasBackerRewardCode()
static Dialog Ok(string langDetail, Action action=null)
static LayerProgress Start(string text, Action onComplete=null)
void UpdateUserContent(PublishedFileId_t fileId)
SteamworksBehaviour steamworks
static void GetAchievement(ID_Achievement id)
static void ResetAchievement(ID_Achievement id)
static void ResetAllAchievement()
BaseModPackage currentPackage
static bool HasDLC(ID_DLC id)
WorkshopItemData CreateItemData(BaseModPackage p)
void CreateUserContent2(UgcQuery query)
UserGeneratedContentQueryManager ugc
void CreateUserContent(BaseModPackage p)