2using HeathenEngineering.SteamworksIntegration;
3using HeathenEngineering.SteamworksIntegration.API;
7public class Steam : MonoBehaviour
13 public UserGeneratedContentQueryManager
ugc;
27 BaseCore.IsOffline = !App.Client.LoggedOn || SteamSettings.behaviour ==
null;
43 ID_DLC.CursedManor =>
true,
51 string text =
"acv_" + id;
54 if (achievement.Id == text)
56 if (!achievement.IsAchieved)
59 EClass.
ui.Say(
"sys_acv".lang(text.lang()), Resources.Load<Sprite>(
"Media/Graphics/Icon/Achievement/" + text));
64 Debug.Log(
"Achievement not found:" + text);
80 UgcQuery myPublished = UgcQuery.GetMyPublished();
81 myPublished.SetReturnKeyValueTags(tags:
true);
87 Debug.Log(
"Creating Content2");
89 if (query.ResultsList !=
null)
91 Debug.Log(query.ResultsList.Count);
93 foreach (WorkshopItem results
in query.ResultsList)
95 if (results.keyValueTags ==
null)
99 StringKeyValuePair[] keyValueTags = results.keyValueTags;
100 for (
int i = 0; i < keyValueTags.Length; i++)
102 StringKeyValuePair stringKeyValuePair = keyValueTags[i];
103 if (stringKeyValuePair.key ==
"id" && stringKeyValuePair.value == baseModPackage.id && results.Owner.id == App.Client.Owner.id)
105 Debug.Log(
"Updating Content");
111 Debug.Log(
"Creating Content");
112 CreateItemData(baseModPackage).Create(
null,
null,
new WorkshopItemKeyValueTag[1]
114 new WorkshopItemKeyValueTag
117 value = baseModPackage.id
119 }, delegate(WorkshopItemDataCreateStatus result)
121 LayerProgress.completed =
true;
126 Debug.Log(
"error:" + result.errorMessage);
131 Debug.Log(
"created");
138 Debug.Log(
"Updating Content");
141 workshopItemData.publishedFileId = fileId;
142 workshopItemData.Update(delegate(WorkshopItemDataUpdateStatus result)
144 LayerProgress.completed =
true;
147 Dialog.Ok(
"mod_publish_error");
148 EClass.ui.Say(result.errorMessage);
149 Debug.Log(
"error:" + result.errorMessage);
153 Dialog.Ok(
"mod_updated");
154 Debug.Log(
"updated");
161 FileInfo fileInfo =
new FileInfo(p.
dirInfo.FullName +
"/preview.jpg");
162 DirectoryInfo directoryInfo =
new DirectoryInfo(p.
dirInfo.FullName);
163 WorkshopItemData workshopItemData =
default(WorkshopItemData);
164 workshopItemData.appId =
steamworks.settings.applicationId;
165 workshopItemData.title = p.
title;
167 workshopItemData.content = directoryInfo;
168 workshopItemData.preview = fileInfo;
169 workshopItemData.metadata = p.id ??
"";
170 workshopItemData.tags = p.
tags;
171 workshopItemData.visibility = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityPublic;
172 WorkshopItemData result = workshopItemData;
176 result.visibility = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityUnlisted;
179 result.visibility = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityPrivate;
182 result.visibility = ERemoteStoragePublishedFileVisibility.k_ERemoteStoragePublishedFileVisibilityFriendsOnly;
185 Debug.Log(App.Client.Owner.id);
186 Debug.Log(result.appId);
188 Debug.Log(directoryInfo.Exists +
"/" + directoryInfo.FullName);
189 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)
BaseModPackage currentPackage
static bool HasDLC(ID_DLC id)
WorkshopItemData CreateItemData(BaseModPackage p)
void CreateUserContent2(UgcQuery query)
UserGeneratedContentQueryManager ugc
void CreateUserContent(BaseModPackage p)