/*public Dictionary<GameObject, worldProp> worldProps { * get { return _worldProps; } * }*/ #endregion #region PublicMethods public void init() { _levelPropDefs = new List <propDef> (); PropsList propList = Resources.Load <PropsList> ("Data/" + Globals.propListName); int i, len = propList.props.Count; for (i = 0; i < len; ++i) { PropDefinition propDef = propList.props [i]; if (propDef.prefab != null) { propDef p = new propDef(); p.id = propDef.id; p.name = propDef.propName; p.prefab = propDef.prefab; p.useCollider = propDef.isUsingCollider; p.useGravity = propDef.isUsingGravity; _levelPropDefs.Add(p); } } _iSelectedItem = 0; //_worldProps = new Dictionary<GameObject, worldProp> (); }
private void setAfkProp(PropDefinition propDefinition) { if (propDefinition == null) { } DHeldObject dHeldObject = new DHeldObject(); switch (propDefinition.PropType) { case PropDefinition.PropTypes.Consumable: dHeldObject.ObjectType = HeldObjectType.CONSUMABLE; break; case PropDefinition.PropTypes.Durable: dHeldObject.ObjectType = HeldObjectType.DURABLE; break; case PropDefinition.PropTypes.InteractiveObject: dHeldObject.ObjectType = HeldObjectType.DISPENSABLE; break; case PropDefinition.PropTypes.PartyGame: dHeldObject.ObjectType = HeldObjectType.PARTYGAME; break; } dHeldObject.ObjectId = propDefinition.NameOnServer; if (AvatarDataHandle.TryGetPlayerHandle(base.gameObject, out var handle)) { dataEntityCollection.GetComponent <HeldObjectsData>(handle).HeldObject = dHeldObject; isUsingAFKProp = true; } }
private void onInventoryChanged(ConsumableInventory inventory) { foreach (KeyValuePair <string, InventoryItemStock> item in inventory.inventoryMap) { if (inventoryItems.ContainsKey(item.Key)) { if (item.Value.GetItemCount() > 0) { if (inventoryItems.ContainsKey(item.Key)) { inventoryItems[item.Key].SetCount(item.Value.GetItemCount()); } } else { Object.Destroy(inventoryItems[item.Key]); inventoryItems.Remove(item.Key); } } else if (item.Value.GetItemCount() > 0) { PropDefinition propDefinition = Service.Get <PropService>().Props[item.Key]; GameObject gameObject = Object.Instantiate(inventoryItemPrefab); gameObject.transform.SetParent(ContentPanel.transform, worldPositionStays: false); gameObject.GetComponent <MarketplaceInventoryItem>().Init(itemSprites[propDefinition.GetIconContentKey().Key.ToLower()], propDefinition, item.Value.GetItemCount()); inventoryItems[item.Key] = gameObject.GetComponent <MarketplaceInventoryItem>(); } } }
private void AddMyProperties() { string propDefinitionKey = DefinitionsHelper.GetPropertiesDefinitionKey <Artech.Architecture.Common.Objects.KBModel>(); PropertiesDefinition myTrnProperties = new PropertiesDefinition(propDefinitionKey); PropDefinition myBool = new PropDefinition("Code Review Tool", typeof(Tool), null, "Tool for code review"); myTrnProperties.Add(myBool); base.AddPropertiesDefinition(propDefinitionKey, myTrnProperties); }
private void Awake() { animator = GetComponent <Animator>(); Dictionary <int, PropDefinition> dictionary = Service.Get <IGameData>().Get <Dictionary <int, PropDefinition> >(); cellPhoneAFKProp = dictionary[CellPhoneAFKProp.Id]; dressingBoothAFKProp = dictionary[DressingBoothAFKProp.Id]; iglooPlansAFKProp = dictionary[IglooPlansAFKProp.Id]; mapAFKProp = dictionary[MapAFKProp.Id]; }
public void RenderReward(DReward reward, RewardIconRenderComplete callback) { this.callback = callback; PropDefinition propDefinition = Service.Get <PropService>().GetPropDefinition(reward.UnlockID.ToString()); if (propDefinition != null) { CoroutineRunner.Start(renderPropIcon(propDefinition, (int)reward.Data), this, "LoadPropIcon"); } }
public void RenderReward(DReward reward, RewardIconRenderComplete callback) { this.callback = callback; PropDefinition propByName = getPropByName((int)reward.UnlockID); if (propByName != null) { CoroutineRunner.Start(renderPartySupply(propByName), this, "LoadPropIcon"); } }
public void Init(Sprite sprite, PropDefinition propDef, int count) { CountText.text = count.ToString(); ItemNameText.text = Service.Get <Localizer>().GetTokenTranslation(propDef.Name); if (propDef.Shareable) { ShareIcon.SetActive(value: true); } ItemIcon.sprite = sprite; itemDefinition = propDef; }
public virtual void SetItem(PropDefinition propDefinition, Texture icon, MarketplaceScreenController marketplaceController, RectTransform itemTransform, RectTransform scrollRectTransform) { this.marketplaceController = marketplaceController; confirmationPlacement.PositionConfirmation(itemTransform, scrollRectTransform); IconImage.texture = icon; prop = propDefinition; TitleText.text = Service.Get <Localizer>().GetTokenTranslation(propDefinition.Name); DescriptionText.text = Service.Get <Localizer>().GetTokenTranslation(propDefinition.Description); singleItemCost = getItemCost(propDefinition); setState(ConfirmationState.Pending); setPurchaseCount(1); }
private bool isItemInSale(CellPhoneSaleActivityDefinition sale, PropDefinition item) { bool result = false; for (int i = 0; i < sale.Consumables.Length; i++) { if (sale.Consumables[i].Id == item.Id) { result = true; break; } } return(result); }
private int getItemCost(PropDefinition definition) { int itemCost = MarketPlaceUtils.GetItemCost(definition, definition.Cost, isItemInSale); if (itemCost != definition.Cost) { SalePanel.SetActive(value: true); SaleText.text = string.Format(Service.Get <Localizer>().GetTokenTranslation("GoGuide.ShopSale.Discount"), MarketPlaceUtils.GetItemDiscountPercentage(definition, isItemInSale)); } else { SalePanel.SetActive(value: false); } return(itemCost); }
public void Init(PropDefinition def) { consumableType = def.GetNameOnServer(); consumableCost = def.Cost; Title.text = Service.Get <Localizer>().GetTokenTranslation(def.Name); if (def.Shareable) { ShareableIcon.SetActive(value: true); } Content.LoadAsync(onIconLoaded, def.GetIconContentKey()); SelectButton.onClick.AddListener(onSelected); setInventoryCount(Service.Get <CPDataEntityCollection>().GetComponent <ConsumableInventoryData>(Service.Get <CPDataEntityCollection>().LocalPlayerHandle).ConsumableInventory); Service.Get <CPDataEntityCollection>().GetComponent <ConsumableInventoryData>(Service.Get <CPDataEntityCollection>().LocalPlayerHandle).OnConsumableInventoryChanged += setInventoryCount; breadcrumb.SetBreadcrumbId($"Consumable_{def.GetNameOnServer()}"); }
private bool isUsePropOnActionValid(object payload) { bool result = true; PropService propService = Service.Get <PropService>(); if (propService.LocalPlayerPropUser != null && propService.LocalPlayerPropUser.Prop != null) { PropDefinition propDef = Service.Get <PropService>().LocalPlayerPropUser.Prop.PropDef; if (propDef.PropType == PropDefinition.PropTypes.Consumable && propDef.ExperienceType == PropDefinition.ConsumableExperience.PartyGameLobby) { result = false; } } return(result); }
private void InitDisplays() { rectTrans = GetComponentInChildren <RectTransform>(); textUI = GetComponentInChildren <Text>(); imageUI = GetComponentInChildren <Image>(); if (displayString != "" || attachedDefinition != null) { hasString = true; } if (displaySprite != null) { hasSprite = true; } if (textUI != null && hasString) { if (!string.IsNullOrEmpty(displayString)) { textUI.text = Service.Get <Localizer>().GetTokenTranslation(displayString); } else { bool flag = false; ZoneDefinition zoneDefinition = attachedDefinition as ZoneDefinition; if (zoneDefinition != null) { textUI.text = Service.Get <Localizer>().GetTokenTranslation(zoneDefinition.ZoneToken); flag = true; } if (!flag) { PropDefinition propDefinition = attachedDefinition as PropDefinition; if (propDefinition != null) { textUI.text = Service.Get <Localizer>().GetTokenTranslation(propDefinition.Name); flag = true; } } if (flag) { } } } if (imageUI != null && hasSprite) { imageUI.sprite = displaySprite; } EnableDisplays(status: false); }
private IEnumerator renderPartySupply(PropDefinition propDefinition) { SpriteContentKey iconContentKey = propDefinition.IconContentKey; AssetRequest <Sprite> iconRequest = Content.LoadAsync(iconContentKey); yield return(iconRequest); AssetRequest <GameObject> prefabRequest = Content.LoadAsync(prefabContentKey); yield return(prefabRequest); GameObject prefab = prefabRequest.Asset; GameObject itemPrefab = Object.Instantiate(prefab); itemPrefab.GetComponent <RewardPopupLabelComponent>().Init(iconRequest.Asset, propDefinition.Cost.ToString()); callback(null, itemPrefab.GetComponent <RectTransform>(), propDefinition.Name); }
public void Init(PropDefinition def) { definition = def; Title.text = Service.Get <Localizer>().GetTokenTranslation(def.Name); Content.LoadAsync(onIconLoaded, def.GetIconContentKey()); SelectButton.onClick.AddListener(onSelected); if (def.ExperienceType == PropDefinition.ConsumableExperience.PartyGameLobby) { breadcrumb.SetBreadcrumbId(PartyGameBreadcrumbType, definition.Id.ToString()); TutorialBreadcrumb.SetBreadcrumbId($"PartyGame_{definition.Id}"); } else if (def.PropType == PropDefinition.PropTypes.Consumable) { breadcrumb.SetBreadcrumbId(ConsumableBreadcrumbType, definition.Id.ToString()); TutorialBreadcrumb.SetBreadcrumbId($"Consumable_{definition.Id}"); } else { breadcrumb.SetBreadcrumbId(GearBreadcrumbType, definition.Id.ToString()); TutorialBreadcrumb.SetBreadcrumbId($"Gear_{definition.Id}"); } ConsumableInventory consumableInventory = Service.Get <CPDataEntityCollection>().GetComponent <ConsumableInventoryData>(Service.Get <CPDataEntityCollection>().LocalPlayerHandle).ConsumableInventory; if (consumableInventory.inventoryMap.ContainsKey(definition.GetNameOnServer())) { int itemCount = consumableInventory.inventoryMap[definition.GetNameOnServer()].GetItemCount(); if (itemCount == 0) { ItemCountIcon.SetActive(value: false); } else { ItemCountIcon.SetActive(value: true); ItemCountIcon.GetComponentInChildren <Text>().text = itemCount.ToString(); } } else { ItemCountIcon.SetActive(value: false); } if (def.PropType == PropDefinition.PropTypes.Durable) { showSelectedState(); } }
private bool checkPropDefnForSpecialItem(PropDefinition propDefnToCheck) { bool result = false; if (propDefnToCheck.HasSpecialMarket && definition.SpecialItems != null) { int num = definition.SpecialItems.Length; for (int i = 0; i < num; i++) { if (definition.SpecialItems[i].Id == propDefnToCheck.Id) { result = true; break; } } } return(result); }
/// <summary> /// Finds the prop of the given name and will spawn it. /// </summary> /// <param name="name"></param> protected void SpawnProp(string name) { PropDefinition pDef = PropManifest.GetPropDefinition(name); if (pDef == null) { return; // If the propDefintion is null, we just return here. We will have already logged an error in PropManifest's function which will have our stack trace. } Prop p = Instantiate(pDef.Actor, inputPosition, Quaternion.identity, transform); Props.Add(p); p.Definition = pDef; pickedActor = p; pickedActor.transform.position = inputPosition; }
public void Init(Sprite sprite, PropDefinition propDef, bool isOutOfStock, bool isSpecialItem, int unlockLevel, Sprite offSprite, Sprite onSprite, Color textColor) { itemDefinition = propDef; ItemNameText.text = Service.Get <Localizer>().GetTokenTranslation(propDef.Name); setItemCost(itemDefinition); FeatureLabel.TypeId = propDef.GetNameOnServer(); FeatureLabel.SetBreadcrumbVisibility(); ItemIcon.texture = sprite.texture; lockStates.IsOutOfStock = isOutOfStock; SpecialItemEffect.SetActive(isSpecialItem); RequiredLevel = unlockLevel; IsSpecialItem = isSpecialItem; theOnSprite = onSprite; theOffSprite = offSprite; checkLockedState(); setSprites(offSprite, onSprite); UpdateVisualStates(); ItemNameText.color = textColor; itemAnimator = GetComponent <Animator>(); }
private void onExperienceStarted(string instanceId, long ownerId, bool isOwnerLocalPlayer, PropDefinition propDef) { pinataInstanceId = instanceId; numCoinsToReward = 0; currentDamageIndex = 0; playersToReward = new List <long>(); long num = long.Parse(pinataInstanceId); setupNetworkServiceListeners(num); Service.Get <PropService>().propExperienceDictionary[num] = base.gameObject; }
public ItemPurchased(PropDefinition itemDefinition, int quantity) { ItemDefinition = itemDefinition; Quantity = quantity; }
public MarketplaceListItemData(PropDefinition propDefn, int unlockLevel = -1, bool isSpecialItem = false) { PropDefn = propDefn; UnlockLevel = unlockLevel; IsSpecialItem = isSpecialItem; }
public override void SetItem(PropDefinition propDefinition, Texture icon, MarketplaceScreenController marketplaceController, RectTransform itemTransform, RectTransform scrollRectTransform) { base.SetItem(propDefinition, icon, marketplaceController, itemTransform, scrollRectTransform); Content.LoadAsync(onLaunchersManifestLoaded, launchersManifestContentKey); }
public void initialize(StandaloneController standaloneController) { GUIManager guiManager = standaloneController.GUIManager; //UI Helpers gridProperties = new GridPropertiesDialog(standaloneController.MeasurementGrid); guiManager.addManagedDialog(gridProperties); developerRenderer = new DeveloperRenderPropertiesDialog(standaloneController.SceneViewController, standaloneController.ImageRenderer, guiManager, standaloneController.NotificationManager); guiManager.addManagedDialog(developerRenderer); discControl = new DiscControl(); guiManager.addManagedDialog(discControl); advancedMandibleMovement = new AdvancedMandibleMovementDialog(standaloneController.MovementSequenceController, standaloneController.MusclePositionController); guiManager.addManagedDialog(advancedMandibleMovement); performanceGui = new PerformanceGui(standaloneController); guiManager.addManagedDialog(performanceGui); measurementGUI = new MeasurementGUI(standaloneController); guiManager.addManagedDialog(measurementGUI); debugVisualizer = new DebugVisualizer(standaloneController); guiManager.addManagedDialog(debugVisualizer); advancedCameraGui = new AdvancedCameraGui(standaloneController.SceneViewController); guiManager.addManagedDialog(advancedCameraGui); libRocketDebugger = new ShowLibRocketDebugger(guiManager, "ShowLibRocketDebugger", "Show LibRocket Debugger", "Developer.libRocketDebugger", "Developer"); resolutionGui = new ResolutionGui(standaloneController.MainWindow); guiManager.addManagedDialog(resolutionGui); RocketInterface.Instance.FileInterface.addExtension(new RocketAssemblyResourceLoader(this.GetType().Assembly)); changeRenderingMode = new ChangeRenderingMode(standaloneController.SceneViewController); disablePhysics = new DisablePhysicsTask(int.MaxValue); //Task Controller TaskController taskController = standaloneController.TaskController; taskController.addTask(new MDIDialogOpenTask(developerRenderer, "Developer.DeveloperRender", "Render", "AnomalousMedical/RenderIcon", TaskMenuCategories.Create)); if (MedicalConfig.ShowDeveloperTools) { taskController.addTask(new MDIDialogOpenTask(discControl, "Medical.DiscEditor", "Disc Editor", "Developer.DiscEditorIcon", TaskMenuCategories.Developer)); taskController.addTask(new MDIDialogOpenTask(advancedMandibleMovement, "Medical.AdvancedMandibleMovement", "Advanced Mandible Movement", "Developer.MovementIcon", TaskMenuCategories.Developer)); taskController.addTask(new MDIDialogOpenTask(gridProperties, "Medical.GridProperties", "Grid", "Developer.GridIcon", TaskMenuCategories.Developer)); taskController.addTask(new MDIDialogOpenTask(performanceGui, "Medical.Performance", "Performance", "Developer.StatisticsIcon", TaskMenuCategories.Developer)); taskController.addTask(new MDIDialogOpenTask(measurementGUI, "Developer.Measurement", "Measurements", "Developer.Measurements", TaskMenuCategories.Developer)); taskController.addTask(new MDIDialogOpenTask(debugVisualizer, "Developer.DebugVisualizer", "Debug Visualizer", "Developer.DebugVisualizer", TaskMenuCategories.Developer)); taskController.addTask(new MDIDialogOpenTask(advancedCameraGui, "Developer.AdvancedCameraGui", "Advanced Camera Settings", CommonResources.NoIcon, TaskMenuCategories.Developer)); taskController.addTask(new MDIDialogOpenTask(resolutionGui, "Developer.SetResolution", "Set Resolution", CommonResources.NoIcon, TaskMenuCategories.Developer)); taskController.addTask(libRocketDebugger); taskController.addTask(new SaveMicrocodeCacheTask()); taskController.addTask(new CallbackTask("Developer.SaveToMax", "Save to 3ds Max", "Developer.MaxDumpIcon", TaskMenuCategories.Developer, (item) => { if (!item.Active) { item.setActive(true); MaxExport maxExport = new MaxExport(standaloneController); guiManager.addManagedDialog(maxExport); maxExport.Visible = true; maxExport.Closed += (evt, args) => { maxExport.Dispose(); item.setActive(false); item.closeTask(); }; } })); taskController.addTask(new CallbackTask("Developer.TogglePhysicalTextures", "Toggle Physical Textures", CommonResources.NoIcon, TaskMenuCategories.Developer, (item) => { if (standaloneController.VirtualTextureManager.Active) { standaloneController.VirtualTextureManager.suspend(); } else { standaloneController.VirtualTextureManager.resume(); } })); taskController.addTask(new CallbackTask("Developer.ToggleCompactMode", "Toggle Compact Mode", CommonResources.NoIcon, TaskMenuCategories.Developer, item => { standaloneController.GUIManager.CompactMode = !standaloneController.GUIManager.CompactMode; standaloneController.GUIManager.layout(); })); taskController.addTask(new CallbackTask("Developer.SpawnTestSplint", "Spawn Test Splint", CommonResources.NoIcon, TaskMenuCategories.Developer, item => { GenericSimObjectDefinition def = new GenericSimObjectDefinition("TestSplint" + Guid.NewGuid()); def.addElement(new SceneNodeDefinition("Node")); var rigidBody = new ReshapeableRigidBodyDefinition("RigidBody"); def.addElement(rigidBody); MultiProp multiProp = new MultiProp(); def.addElement(new BehaviorDefinition("MultiProp", multiProp)); DynamicSplint splint = new DynamicSplint() { MultiPropName = "MultiProp", }; def.addElement(new BehaviorDefinition("Behavior", splint)); PositionCollection positions; using (var stream = VirtualFileSystem.Instance.openStream("Plugins/SplintProps/PartModels/SplintSpace.positions", Engine.Resources.FileMode.Open)) { positions = new PositionCollection(stream); } Position position; if (false) { position = positions.getPosition("MaxillaryGroup"); splint.StartIndex = 1; splint.EndIndex = 17; rigidBody.Mass = 0; rigidBody.CollisionFilterMask = -3; rigidBody.CollisionFilterGroup = 1; } else { position = positions.getPosition("MandibularGroup"); splint.StartIndex = 17; splint.EndIndex = 33; rigidBody.Mass = 1; rigidBody.CollisionFilterMask = -5; rigidBody.CollisionFilterGroup = 1; var joint = new Generic6DofConstraintDefinition(Splint.JointName) { RigidBodyASimObject = "Mandible", RigidBodyAElement = "Actor", RigidBodyBSimObject = "this", RigidBodyBElement = "RigidBody", }; joint.TranslationMotor.LowerLimit = Vector3.Zero; joint.TranslationMotor.UpperLimit = Vector3.Zero; joint.XRotMotor.LoLimit = 0; joint.XRotMotor.HiLimit = 0; joint.YRotMotor.LoLimit = 0; joint.YRotMotor.HiLimit = 0; joint.ZRotMotor.LoLimit = 0; joint.ZRotMotor.HiLimit = 0; def.addElement(joint); def.addElement(new BehaviorDefinition("JointHandler", new MultiPropJointHandler(joint.Name, multiProp.Name))); //def.addElement(new BehaviorDefinition(Splint.SplintBehaviorName, new Splint() //{ //})); } def.Translation = position.Translation; def.Rotation = position.Rotation; PropDefinition propDef = new PropDefinition(def); standaloneController.PropFactory.addDefinition(propDef); Vector3 translationOffset = Quaternion.quatRotate(MandibleController.StartRotation.inverse(), position.Translation - MandibleController.StartTranslation); SimObject mandibleObject = MandibleController.Mandible.Owner; Vector3 trans = mandibleObject.Translation + Quaternion.quatRotate(mandibleObject.Rotation, translationOffset); Quaternion rotation = mandibleObject.Rotation; standaloneController.PropFactory.createProp(def.Name, trans, rotation); //SimObjectBase instance = def.register(standaloneController.MedicalController.CurrentScene.getDefaultSubScene()); //standaloneController.MedicalController.addSimObject(instance); //standaloneController.MedicalController.CurrentScene.buildScene(); //if (SimObjectErrorManager.HasErrors) //{ // standaloneController.NotificationManager.showCallbackNotification("Errors loading the prop.\nClick for details.", MessageBoxIcons.Error, () => // { // SceneErrorWindow errorGui = new SceneErrorWindow(guiManager); // errorGui.Visible = true; // }); //} })); taskController.addTask(disablePhysics); taskController.addTask(changeRenderingMode); #if ALLOW_CRASH_PROGRAM taskController.addTask(new CallbackTask("Developer.Crash", "Crash The Program", CommonResources.NoIcon, TaskMenuCategories.Developer, (item) => { throw new Exception("Manually crashed program"); })); #endif } standaloneController.ViewHostFactory.addFactory(new WizardComponentViews()); if (PlatformConfig.AllowFullscreenToggle && MedicalConfig.ShowDeveloperTools) { CallbackTask toggleBorderless = new CallbackTask("Developer.ToggleBorderless", "Toggle Borderless", "AnomalousMedical/ToggleFullscreen", TaskMenuCategories.Developer, int.MaxValue, false, (item) => { MainWindow.Instance.toggleBorderless(); }); taskController.addTask(toggleBorderless); } if (standaloneController.VirtualTextureManager != null && MedicalConfig.ShowDeveloperTools) { virtualTextureDebugger = new VirtualTextureDebugger(standaloneController.VirtualTextureManager); guiManager.addManagedDialog(virtualTextureDebugger); taskController.addTask(new MDIDialogOpenTask(virtualTextureDebugger, "Developer.VirtualTextureDebugger", "Virtual Texture Debugger", CommonResources.NoIcon, TaskMenuCategories.Developer)); } var screenshotButtonEvent = new ButtonEvent(EventLayers.Gui, frameUp: (evtMgr) => { try { String screenshotFolder = Path.Combine(MedicalConfig.UserDocRoot, "Screenshots"); if (!Directory.Exists(screenshotFolder)) { Directory.CreateDirectory(screenshotFolder); } OgreInterface.Instance.OgrePrimaryWindow.OgreRenderTarget.writeContentsToTimestampedFile(Path.Combine(screenshotFolder, "Screenshot"), ".png"); } catch (Exception ex) { MessageBox.show(String.Format("{0} saving screenshot. Message {1}", ex.GetType().Name, ex.Message), "Error saving screenshot", MessageBoxStyle.IconError | MessageBoxStyle.Ok); } }); screenshotButtonEvent.addButton(KeyboardButtonCode.KC_F8); screenshotButtonEvent.addButton(KeyboardButtonCode.KC_LSHIFT); standaloneController.MedicalController.EventManager.addEvent(screenshotButtonEvent); }
private void onExperienceStarted(string instanceId, long ownerId, bool isOwnerLocalPlayer, PropDefinition propDef) { try { invitationExperienceInstanceId = instanceId; invitingPlayerId = ownerId; isInvitationLocalPlayer = isOwnerLocalPlayer; invitingPlayerObject = getInvitingPlayerObject(); if (invitingPlayerObject != null) { invitingPlayerAvatarView = invitingPlayerObject.GetComponent <AvatarView>(); } CPMMOItemId identifier = new CPMMOItemId(long.Parse(invitationExperienceInstanceId), CPMMOItemId.CPMMOItemParent.PLAYER); serverObjectHandle = dataEntityCollection.FindEntity <ServerObjectItemData, CPMMOItemId>(identifier); if (serverObjectHandle.IsNull) { onItemRemoved(); return; } serverObjectData = dataEntityCollection.GetComponent <ServerObjectItemData>(serverObjectHandle); AvailableItemQuantity = propDef.TotalItemQuantity; totalItemQuantity = propDef.TotalItemQuantity; setupNetworkServiceListeners(); if (isOwnerLocalPlayer) { GameObject target = dataEntityCollection.GetComponent <GameObjectReferenceData>(dataEntityCollection.LocalPlayerHandle).GameObject; InputButtonGroupContentKey inputButtonGroupContentKey = (LocomotionHelper.IsCurrentControllerOfType <SwimController>(target) ? ((!(LocomotionHelper.GetCurrentController(target) as SwimController).IsInShallowWater) ? DivingControlLayout : SwimControlLayout) : ((!LocomotionHelper.IsCurrentControllerOfType <SitController>(target)) ? ControlLayout : ((!(LocomotionHelper.GetCurrentController(target) as SitController).IsUnderwater) ? SitControlLayout : SitSwimControlLayout))); if (inputButtonGroupContentKey != null && !string.IsNullOrEmpty(inputButtonGroupContentKey.Key)) { Service.Get <EventDispatcher>().DispatchEvent(new ControlsScreenEvents.SetRightOption(inputButtonGroupContentKey)); } else { Log.LogError(this, "Did not find a valid controls content key for this state"); } ParticipationData component = dataEntityCollection.GetComponent <ParticipationData>(dataEntityCollection.LocalPlayerHandle); if (component != null) { component.CurrentParticipationState = ParticipationState.Participating; component.IsInteractButtonAvailable = false; } } Service.Get <EventDispatcher>().AddListener <PenguinInteraction.InteractionStartedEvent>(onInteractionStarted); if (invitingPlayerAvatarView != null) { if (invitingPlayerAvatarView.IsReady) { onAvatarReady(); } invitingPlayerAvatarView.OnReady += onAvatarViewReady; } switchToCamera(); } catch (FormatException ex) { Log.LogException(this, ex); } }
private void setItemCost(PropDefinition definition) { PriceTag.setItem(definition, definition.Cost, (CellPhoneSaleActivityDefinition sale, PropDefinition item) => new List <PropDefinition>(sale.Consumables).Find((PropDefinition prop) => prop.Id == definition.Id)); }
private void onExperienceStarted(string instanceId, long ownerId, bool isOwnerLocalPlayer, PropDefinition propDef) { partyBlasterId = instanceId; setupNetworkServiceListeners(); if (BlastEffectPrefab != null) { CoroutineRunner.Start(playBlastEffect(), this, "playBlastEffect"); } if (EffectRadiusPrefab != null) { CoroutineRunner.Start(playEffectRadius(), this, "playEffectRadius"); } }
public MarketplaceItemData(PropDefinition propDefn, int unlockLevel = -1) { PropDefn = propDefn; UnlockLevel = unlockLevel; }