void Awake() { // Setting up the references. player = GameObject.FindGameObjectWithTag("Player"); playerHealth = player.GetComponent <PlayerHealth> (); playerEvent = player.GetComponent <CharacterEvent> (); audioSource = GetComponent <AudioSource> (); }
// Use this for initialization void Awake() { rb = GetComponent <Rigidbody> (); anim = GetComponent <Animator> (); target = GameObject.FindGameObjectWithTag("Player").transform; playerEvent = target.GetComponent <CharacterEvent> (); world = GameObject.FindGameObjectWithTag("World").GetComponent <World> (); }
public virtual void OnEventRaised(Character value) { CharacterEvent characterEvent = gameEvent as CharacterEvent; if (characterEvent) { characterResponse.Invoke(value); } }
protected void Activate(CharacterEvent data) { ability = ((HitEvent)data).Source.Ability; Team = ((HitEvent)data).Source.Owner.GetComponent<Target>().Team; ColorChanger cc = ((HitEvent)data).Source.Owner.GetComponent<ColorChanger>(); colorChanger.SetColor(cc.color); spawn.Enable(Team, lane.Enumerator(), cc.color); GetComponent<CharacterEventListener>().RemoveCallback(CharacterEvents.Hit, Activate); }
internal static unsafe InputEvent Invoke(CharacterEvent Event) { long *p = stackalloc long[] { 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L }; byte *b = (byte *)p; *((CharacterEvent *)(b + 0)) = Event; Main.GetProcessEvent(WidgetBlueprintLibrary.DefaultObject, GetInputEventFromCharacterEvent_ptr, new IntPtr(p));; return(*((InputEvent *)(b + 32))); } }
public IActionResult UpdateCharacterEventDetails([FromBody] CharacterEvent characterEvent) { var characterEventToUpdate = _context.tblCharacterEvents.FirstOrDefault(ce => ce.Id == characterEvent.Id); _context.Entry(characterEventToUpdate).CurrentValues.SetValues(characterEvent); _context.SaveChanges(); return(Ok()); }
public void AddCharacterToEvent(int characterId, int eventId) { var newCharacterEvent = new CharacterEvent { CharacterId = characterId, EventId = eventId }; _context.Add(newCharacterEvent); _context.SaveChanges(); }
private bool IsExist(CharacterEvent chev) { for (int i = 0; i < listBox1.Items.Count;i++ ) { if (chev.CompareTo((CharacterEvent)listBox1.Items[i])) { return true; } } return false; }
public void OnDeath(CharacterEvent data) { if (!isPlayer) { Destroy(gameObject); } isDead = true; GlobalEventListener.Listener().Broadcast(GetComponent<TypeProvider>().Type, new CharacterStatusEventData(){ EventCharacterType = GetComponent<TypeProvider>().Type, EventStatus = CharacterStatusEventData.Status.Die, Source = gameObject }); }
void OnAwake(CharacterEvent eventdata) { if (eventdata.Person != Character.Character) { return; } var col = manga.color; col.a = 0; manga.color = col; }
float timerAttack; // Timer for counting up to the next attack. void Awake() { // Setting up the references. player = GameObject.FindGameObjectWithTag("Player"); playerHealth = player.GetComponent <PlayerHealth> (); playerEvent = player.GetComponent <CharacterEvent> (); enemyHealth = GetComponent <EnemyHealth>(); anim = GetComponent <Animator> (); state = GetComponent <Monster> (); rb = GetComponent <Rigidbody> (); audioSource = GetComponent <AudioSource> (); }
public override void OnInspectorGUI() { base.OnInspectorGUI(); GUI.enabled = Application.isPlaying; CharacterEvent e = target as CharacterEvent; if (GUILayout.Button("Trigger")) { e.Raise(DummyCharacter.NewDummy); } }
protected void OnHit(CharacterEvent data) { int knockOffDamage = Mathf.Min(((HitEvent)data).Damage.Magnitude, CARRYABLE_SIZE); Resource -= knockOffDamage; GameObject chunk = (GameObject)Instantiate(gameObject); Vector3 delta = Random.insideUnitSphere * SPAWN_DISTANCE; Vector3 euler = transform.rotation.eulerAngles; euler.y = Random.Range(0f, 360f); delta.y = 0f; chunk.transform.position = transform.position + delta; chunk.transform.rotation = Quaternion.Euler(euler); chunk.GetComponent<Germanium>().startingResources = startingResources; chunk.GetComponent<Germanium>().Resource = knockOffDamage; }
public void StartSelection() { gameObject.SetActive(true); CharactedSelected = new CharacterEvent(); SelectionCancelled = new UnityEvent(); for (int i = 0; i < 4; i++) { var index = i; CharacterPanels[index].SetupCharacterPanel(PlayerController.Instance.Party[index]); CharacterPanels[index].SetOnClick(() => ConfirmSelection(PlayerController.Instance.Party[index])); } }
void Awake() { anim = GetComponent <Animator> (); playerAudio = GetComponent <AudioSource> (); playerEvent = GetComponent <CharacterEvent> (); playerMovement = GetComponent <FirstPersonController> (); fadeToScene = GameObject.FindGameObjectWithTag("MainCamera").GetComponent <FadeToScene>(); currentHealth = startHealth; color.b = 0; color.r = (((float)currentHealth * (-(float)rgb / (float)startHealth) + (float)rgb) / (float)rgb); color.g = ((float)currentHealth / (float)startHealth); healthMaterial.SetColor("_Color", color); }
private bool HasPossibleCharacterEvent(RoomStats.RoomType room) { for (int i = 0; i < campMan.GetCharacterEvents().Count; i++) { GameObject charEvent = campMan.GetCharacterEvents()[i]; CharacterEvent eventDriver = charEvent.GetComponent <CharacterEvent>(); if (eventDriver.MatchesRoomType(room) && /*&& !eventDriver.playedOnce*/ HasRequiredStats(eventDriver.requiredStats, true)) { return(true); //end function as soon as one is found } } return(false); }
/// <summary> /// Called before game start /// </summary> private void Awake() { ItemPickupEvent = new ItemEvent(); ItemPickupEvent.AddListener(Ping); ItemDroppedEvent = new ItemEvent(); ItemDroppedEvent.AddListener(Ping); DialogOpenEvent = new DialogEvent(); DialogOpenEvent.AddListener(Ping); DialogOptionSelectedEvent = new DialogOptionEvent(); DialogOptionSelectedEvent.AddListener(Ping); CharacterDeathEvent = new CharacterEvent(); CharacterDeathEvent.AddListener(Ping); InteractableActivatedEvent = new InteractableEvent(); }
private void button1_Click(object sender, EventArgs e) { if (textBox1.Text.Replace(" ", "").Length > 0) { CharacterEvent che = new CharacterEvent(textBox1.Text); if (!IsExist(che)) { listBox1.Items.Add(che); } else { MessageBox.Show("Try Another Event"); } listBox1.SelectedIndex = 0; } }
public void OnEvent(CharacterEvent _characterEvent) { if (!_characterEvent.character.CharacterID.Equals("Spooky")) { if (_characterEvent.type == CharacterEventType.Death) { EnemyKilled(); UpdateWaveSpawnerUI(); } if (_characterEvent.type == CharacterEventType.Release) { EnemyKilled(); UpdateWaveSpawnerUI(); } } return; }
public void Initialize() { var characterDic = _context.animationEventFunc.characterDic; characterDic["Effect"] = new CharacterEvent { animationDic = new Dictionary <string, AnimationEvent>() }; var animationDic = characterDic["Effect"].animationDic; animationDic["attack_1"] = new AnimationEvent() { frameDic = new Dictionary <int, Action <GameEntity> >() }; var frameDic = animationDic["attack_1"].frameDic; frameDic[_context.imageAsset.infos["Effect"].animationInfos["attack_1"].maxFrame] = OnEffectAttack1Over; }
protected override void Execute(List <GameEntity> entities) { var characterDic = _context.animationEventFunc.characterDic; characterDic["UchihaMadara"] = new CharacterEvent { animationDic = new Dictionary <string, AnimationEvent>() }; var animationDic = characterDic["UchihaMadara"].animationDic; // attack_1 AE animationDic["attack_1"] = new AnimationEvent() { frameDic = new Dictionary <int, Action <GameEntity> >() }; var frameDic = animationDic["attack_1"].frameDic; frameDic[19] = OnUchihaMadaraTaijutsuAttackCheck; }
private GameObject RandomizeCharacterEvent(RoomStats.RoomType roomName) { List <GameObject> eligibleEvents = new List <GameObject>(); for (int i = 0; i < campMan.GetCharacterEvents().Count; i++) { CharacterEvent charEvent = campMan.GetCharacterEvents()[i].GetComponent <CharacterEvent>(); if (charEvent.MatchesRoomType(roomName) && /*&& charEvent.playedOnce == false*/ HasRequiredStats(charEvent.requiredStats, true)) { eligibleEvents.Add(campMan.GetCharacterEvents()[i]); } } int randNum = Random.Range(0, eligibleEvents.Count); GameObject thisEvent = eligibleEvents[randNum]; campMan.playedEvents.Add(thisEvent); campMan.charEvents.Remove(thisEvent); //campMan.RemoveFromCharEvents(thisEvent); return(thisEvent); }
public IActionResult CheckOut([FromBody] JObject token) { try { StripeConfiguration.SetApiKey(StripeKey); var amount = 0; var totalVp = 0; var totalXp = 0; var key = Guid.Parse(token["cartKey"].ToString()); var cart = _lfContext.tblCart.Include(c => c.CartItems).FirstOrDefault(c => c.Key == key); if (cart == null) { return(BadRequest("Unable to retrieve cart data.")); } var player = _appDbContext.tblPlayer.FirstOrDefault(p => p.Id == cart.PlayerId).ThrowIfNull("Player"); var currentEvent = _lfContext.tblEvent.FirstOrDefault(e => e.IsActiveEvent).ThrowIfNull("Current Event"); foreach (var cartItem in cart.CartItems) { if (cartItem == cart.CartItems.First()) { amount += 40; } else { amount += 10; } amount += cartItem.PurchaseXp; totalVp += cartItem.VpToXp; totalXp = totalXp + cartItem.PurchaseXp + cartItem.VpToXp; } var options = new StripeChargeCreateOptions { Amount = amount * 100, Currency = "usd", Description = $"Pre-registration for event '{currentEvent.Title}'", SourceTokenOrExistingSourceId = token["id"].ToString() }; var service = new StripeChargeService(); var charge = service.Create(options); cart.Paid = true; _lfContext.tblCart.Update(cart); player.VolunteerPoints = player.VolunteerPoints - totalVp; player.VolunteerPoints += 10; _appDbContext.tblPlayer.Update(player); _appDbContext.SaveChanges(); var characterDetailForEmail = new List <PreRegCharacterDetail>(); foreach (var cartItem in cart.CartItems) { var characterTotalXp = 0; characterTotalXp += cartItem.PurchaseXp; characterTotalXp += cartItem.VpToXp; var character = _lfContext.tblCharacter.FirstOrDefault(c => c.Id == cartItem.CharacterId); if (character == null) { return(BadRequest("Unable to get character data for characterid " + cartItem.CharacterId)); } if (character.AccumulatedXP == null) { character.AccumulatedXP = 0; } if (character.AvailableXP == null) { character.AvailableXP = 0; } var baseXp = 40; characterTotalXp += baseXp; character.AccumulatedXP += characterTotalXp; character.AvailableXP += characterTotalXp; var newCharacterEvent = new CharacterEvent { VpToXp = cartItem.VpToXp, XpBought = cartItem.PurchaseXp, EventId = currentEvent.Id, CharacterId = cartItem.CharacterId }; _lfContext.tblCharacter.Update(character); _lfContext.tblCharacterEvents.Add(newCharacterEvent); var characterToAdd = new PreRegCharacterDetail { Character = character, CartItem = cartItem, BaseXp = baseXp, BaseXpCost = characterDetailForEmail.FirstOrDefault() == null ? 40 : 10 }; characterDetailForEmail.Add(characterToAdd); } _lfContext.SaveChanges(); var stripeResonse = JObject.Parse(charge.StripeResponse.ObjectJson); var billingDetails = charge.Source.Card; var email = token["email"].ToString(); var emailDetails = new PreRegEmailDetails { Email = email, PreRegCharacterDetails = characterDetailForEmail, OrderID = cart.Key, BillingDetails = billingDetails, GrandTotal = amount, Event = currentEvent, RemainingVp = (int)player.VolunteerPoints }; Email.SendPreRegConfirmationEmail(emailDetails); return(Ok(charge)); } catch (Exception e) { return(BadRequest("An unknown error has ocurred")); } }
/// <summary> /// Assigns the corresponding character event driver to this choice and outcomes. Only used for character events /// </summary> public void AssignCharacterDriver(CharacterEvent driver) { characterDriver = driver; }
/* * public IEnumerator SleepCycle( ) * { * // sleep. animation. camera. fade out. advance time of day. recharge health. fade in. music. * * Zone zone = Global.Instance.GetZone( gameObject ); * musicSource = zone.GetComponent<AudioSource>(); * musicSource.clip = sleepyMusic; * * // Sleeping = true; * // SleepInterrupt = false; * * musicSource.Play(); * Global.Instance.AudioGoSleep( 1 ); * * cam = Global.Instance.cameraController; * cam.LookControlEnabled = false; * //cam.Automated = true; * //cam.LerpTo( transform.position + Vector3.up * cam.cameraHeightMax, Vector3.down, cam.GetForwardDirection(), cameraLerpDuration ); * float start = Time.unscaledTime; * float todStart = Global.Instance.CurrentTimeOfDay; * //float lerpstart = cam.lookInput.y; * Color cacheScreenFade = cam.FullScreenQuad.color; * * while( Time.unscaledTime - start < sleepCameraLerpDurationIn ) * { * if( SleepInterrupt ) * break; * float alpha = ( Time.unscaledTime - start ) / sleepCameraLerpDurationIn; * cam.lookInput.y = Mathf.Lerp(cam.lookInput.y, 90, alpha ); * //cam.ScreenFadeColor( Color.Lerp( cacheScreenFade, fade, alpha) ); * yield return null; * } * if( SleepInterrupt ) * { * yield return WakeUpSequence(); * yield break; * } * * Time.timeScale = sleepTimescale; * start = Time.unscaledTime; * while( Time.unscaledTime - start < sleepTODWait ) * { * if( SleepInterrupt ) * break; * float alpha = ( Time.unscaledTime - start ) / sleepTODWait; * Global.Instance.CurrentTimeOfDay = todStart + sleepTODDuration * alpha; * Global.Instance.UpdateTimeOfDay(); * //cam.ScreenFadeColor( fade ); * yield return null; * } * * SleepInterrupt = true; * yield return WakeUpSequence(); * } * * IEnumerator WakeUpSequence() * { * Time.timeScale = 1; * musicSource.Stop(); * Global.Instance.AudioWakeUp( 1 ); * cam.LookControlEnabled = true; * * float start = Time.unscaledTime; * while( Time.unscaledTime - start < sleepCameraLerpDurationOut ) * { * float alpha = ( Time.unscaledTime - start ) / sleepCameraLerpDurationOut; * cam.lookInput.y = Mathf.Lerp( cam.lookInput.y, 15, alpha ); * //cam.ScreenFadeColor( Color.Lerp( fade, cacheScreenFade, alpha) ); * yield return null; * } * //Sleeping = false; * //SleepInterrupt = false; * * sleepState = SleepState.None; * body.isKinematic = false; * ball.Sphere.enabled = true; * ball.LockToGround = true; * FaceDirectionOfMovement = true; * moveTransform.parent = null; * billboard.faceCamera = true; * PlayFaceAnimation( "idle" ); * } */ void UpdatePlayer() { // if( Sleeping ) // { // if( Input.GetButtonDown( "Interact" ) ) // { // SleepInterrupt = true; // } // return; // } UpdatePlayerMovementInput(); UpdatePlayerWeaponInput(); if (Input.GetKeyDown(KeyCode.Equals)) { CharacterEvent evt = new CharacterEvent(CharacterEventEnum.DebugAddAffinity, moveTransform.position, Time.time, this, this); BroadcastEvent(evt, Global.Instance.GlobalSightDistance); } if (Input.GetKeyDown(KeyCode.Minus)) { CharacterEvent evt = new CharacterEvent(CharacterEventEnum.DebugSubAffinity, moveTransform.position, Time.time, this, this); BroadcastEvent(evt, Global.Instance.GlobalSightDistance); } if (Input.GetKeyDown(KeyCode.H)) { Global.Instance.cameraController.Shake(); } /*if( Input.GetButtonDown( "Mode" ) ) * { * PushState( "Construction" ); * }*/ if (Input.GetButtonDown("Action")) { selected = moveTransform; acts.Clear(); acts.Add(this); List <string> actions = new List <string>(); actions.Add("mode build"); actions.Add("follow all"); actions.Add("unfollow all"); actions.Add("sleep"); PushState("ContextMenu"); Global.Instance.ContextMenu.Show(actions.ToArray()); } else if (HeldObject != null) { InteractIndicator.SetActive(false); if (Input.GetButtonDown("Interact")) { DropObject(); lastSelected = null; } } else if (Physics.CheckSphere(moveTransform.position, ActionRadius, LayerMask.GetMask(Global.Instance.gameData.InteractLayers), qti)) { selected = null; Vector3 start = moveTransform.position; start.y = Global.Instance.GlobalRaycastY; RaycastHit info = new RaycastHit(); // line of sight string[] BlockingLineOfSightLayers = new string[] { "Default" }; if (Physics.Raycast(new Ray(start, moveTransform.forward), out info, ActionRadius, LayerMask.GetMask(Global.Instance.gameData.InteractLayers) | LayerMask.GetMask(BlockingLineOfSightLayers), qti)) { // prevent selecting objects through walls if (!((info.transform.gameObject.layer & LayerMask.GetMask(BlockingLineOfSightLayers)) > 0)) { List <IAction> iactions = new List <IAction>(info.transform.GetComponents <IAction>()); if (iactions.Count > 0) { selected = info.transform; } } } if (selected == null) { // if no object is in direct line of sight, choose highest dot int count = Physics.OverlapSphereNonAlloc(start, ActionRadius, SensorColliders, LayerMask.GetMask(Global.Instance.gameData.InteractLayers), qti); Collider closest = null; float largestDot = 0f; for (int i = 0; i < count; i++) { Collider collider = SensorColliders[i]; if (CanSeeObject(collider.gameObject, false)) { Vector3 flat = collider.transform.position - moveTransform.position; flat.y = 0; float dot = Vector3.Dot(moveTransform.forward, flat.normalized); if (dot > ActionRaycastMinimumDot && dot > largestDot && collider.transform != moveTransform) { closest = collider; largestDot = dot; } } } if (closest != null) { //List<IAction> iactions = new List<IAction>( selected.GetComponents<IAction>() ); selected = closest.transform; } } if (selected == moveTransform) { Debug.LogWarning("tried to select self", this); return; } if (selected == null || Vector3.Distance(selected.transform.position, moveTransform.position) > ActionRadius) { InteractIndicator.SetActive(false); lastSelected = null; if (Global.Instance.ContextMenu.gameObject.activeSelf) { Global.Instance.ContextMenu.Hide(); } selectedCharacter = null; HidePositionalText(); Global.Instance.HideCharacterInfo(); } else { acts = new List <IAction>(selected.GetComponents <IAction>()); if (acts.Count > 0) { // default indicator transform InteractIndicator.transform.position = selected.position + Vector3.up * Global.Instance.GlobalSpriteOnGroundY; InteractIndicator.transform.rotation = Quaternion.identity; InteractIndicator.transform.localScale = Vector3.one; // only let a single IAction class position the indicator IAction firstAction = acts[0]; if (firstAction != lastSelected) { lastSelected = firstAction; HidePositionalText(); selectedCharacter = null; Global.Instance.HideCharacterInfo(); } if (!InteractIndicator.activeSelf) { InteractIndicator.SetActive(true); } Character chr = selected.GetComponent <Character>(); if (chr != null) { selectedCharacter = chr; // F8CF62 Color gold = new Color((float)0xF8 / 255f, (float)0xCF / 255f, (float)0x62 / 255f); ShowPositionalText(selected.position, selectedCharacter.CharacterName, selectedCharacter.ball.Sphere.radius, gold); Global.Instance.ShowCharacterInfo(selectedCharacter); } // provide context-sensitive actions to the player List <string> actions = new List <string>(); // tags have categorical actions associated with them. Context is not considered, though. Dictionary <Tag, string> actionTagMap = new Dictionary <Tag, string>(); if (WithinHoldRange(selected)) { actionTagMap[Tag.Swag] = "carry"; } actionTagMap[Tag.Weapon] = "keep"; actionTagMap[Tag.Food] = "eat"; foreach (var act in acts) { MonoBehaviour mono = (MonoBehaviour)act; Tags tags = mono.GetComponent <Tags>(); if (tags != null) { // based on order of keys in dictionary foreach (var pair in actionTagMap) { if (tags.HasTag(pair.Key) && !actions.Contains(pair.Value)) { actions.Add(pair.Value); } } } } ActionData actionData = new ActionData(); actionData.instigator = this; actionData.actions = actions; actionData.indicator = InteractIndicator.transform; firstAction.GetActionContext(ref actionData); if (Input.GetButtonDown("Interact")) { if (actions.Count > 0) { PushState("ContextMenu"); ShowContextMenu(selected, actions.ToArray()); if (selectedCharacter == null) { HidePositionalText(); } else { CenterContextText(selectedCharacter.CharacterName); } } else { // there is only one action to take foreach (var a in acts) { a.OnAction(this); } } } } } } else { InteractIndicator.SetActive(false); } if (Input.GetButtonDown("Next")) { SelectNextRightHand(); } if (Input.GetButtonDown("Previous")) { SelectNextLeftHand(); } if (Input.GetButtonDown("Shield") || Input.GetAxis("Shield") > 0.5f) { ShieldOn(); } if (Input.GetButtonUp("Shield") || Input.GetAxis("Shield") < 0.5f) { ShieldOff(); } }
protected void DealDamage(CharacterEvent data) { DealDamage(((HitEvent)data).Damage, true, ((HitEvent)data).Source); }
// Use this for initialization void Awake() { playerEvent = GameObject.FindGameObjectWithTag("Player").GetComponent <CharacterEvent> (); }
void TalkGossip(Character instigator) { AffinityData aff = GetAffinity(instigator.id); if (aff.Value > AffPeaceful && aff.Value < AffShare - 1) { ModifyAffinity(instigator.id, AffModTalk); } if (aff.Value > AffTalk) { if (KnownEvents.Count == 0) { Speak("hello"); return; } // choose a ConverseEvent to share with the instigator CharacterEvent evt = KnownEvents[GossipIndex++ % KnownEvents.Count]; CharacterInfo witness = Global.Instance.CharacterInfoLookup[evt.WitnessId]; CharacterInfo cia = Global.Instance.CharacterInfoLookup[evt.CharacterIdA]; CharacterInfo cib = Global.Instance.CharacterInfoLookup[evt.CharacterIdB]; /* * // lazy lookup * if( evt.CharacterA == null ) * { * SerializedComponent sca = SerializedObject.ResolveComponentFromId( evt.CharacterIdA ); * if( sca != null ) * evt.CharacterA = (Character)sca; * } * // lazy lookup * if( evt.CharacterB == null ) * { * SerializedComponent scb = SerializedObject.ResolveComponentFromId( evt.CharacterIdB ); * if( scb != null ) * evt.CharacterB = (Character)scb; * } */ instigator.ReceiveEvent(evt); // 1) what happened. Whether I saw it, or someone told me. with correct object/subject dependent on who is listening, and pronouns, tense, etc. // 2) why it happened... assumptions, speculation, unknowns. // 3) personal feelings, assessment, conclusion. string statement = ""; string verb; switch (evt.type) { case CharacterEventEnum.Damage: verb = "attack"; if (cia.id == id) { statement += cib.name + " " + PastTense(verb) + " me " + (Time.time - evt.time) + " seconds ago."; } else if (cib.id == id) { statement += "I " + PastTense(verb) + " " + cia.name + " " + (Time.time - evt.time) + " seconds ago."; } else if (witness.id == id) { statement += "I saw " + cib.name + " " + verb + " " + cia.name + " " + (Time.time - evt.time) + " seconds ago."; } else if (witness.id == cia.id) { statement += cia.name + " said " + cib.name + " " + PastTense(verb) + " " + ThirdPersonSingularObject(cia) + " " + (Time.time - evt.time) + " seconds ago."; } else if (witness.id == cib.id) { statement += cib.name + " said " + ThirdPersonSingularSubject(cib) + " " + PastTense(verb) + " " + cia.name + " " + (Time.time - evt.time) + " seconds ago."; } else { statement += witness.name + " saw " + cib.name + " " + verb + " " + cia.name + " " + (Time.time - evt.time) + " seconds ago."; } if (!cia.alive) { statement += " " + Cap(cia.name) + " is dead."; } break; case CharacterEventEnum.Death: statement += cib.name + " killed " + cia.name + "! " + (Time.time - evt.time) + " seconds ago."; break; default: statement += evt.type.ToString() + " " + cia.name + " " + cib.name + " " + (Time.time - evt.time).ToString("D") + " seconds ago."; statement += " " + ConstructStatementAbout(cib.id); break; } Speak(statement, 2); /* * // Gossip: pick a random affinity/character and say something about them * string say = "..."; * List<int> keys = new List<int>(); * foreach( var pair in Affinity ) * if( pair.Key != instigator.id && pair.Key != GetInstanceID() ) * keys.Add( pair.Key ); * if( keys.Count > 0 ) * { * Character cha = null; * const int maxtries = 10; * int tries = 0; * while( cha == null ) * { * tries++; * if( tries > maxtries || tries > keys.Count ) * break; * * SerializedComponent sco = null; * int key = keys[ GossipIndex++ % keys.Count ]; * if( SerializedObject.serializedComponents.ContainsKey( key ) ) * sco = SerializedObject.serializedComponents[ key ]; * else * continue; * if( sco == null ) * { * // character is null. is dead? * continue; * } * cha = (Character)sco; * if( cha != null ) * { * AffinityData ad = GetAffinity( cha ); * * string ThirdPersonSingularSubject = "<ThirdPersonSingularSubject>"; * string ThirdPersonSingularObject = "<ThirdPersonSingularObject>"; * if( cha.identity.female ) * { * ThirdPersonSingularSubject = "she"; * ThirdPersonSingularObject = "her"; * } * else * { * ThirdPersonSingularSubject = "he"; * ThirdPersonSingularObject = "him"; * } * * if( ad.Value < AffPeaceful ) * say = "I hate " + cha.CharacterName + ". " + Cap( ThirdPersonSingularSubject ) + " can die."; * else * if( ad.Value < AffTalk ) * say = cha.CharacterName + " sucks. I will not talk to " + ThirdPersonSingularObject + "."; * else * if( ad.Value < 0 ) * say = "I think " + cha.CharacterName + " needs to help out around here."; * else * if( ad.Value < AffFollow ) * say = cha.CharacterName + " seems okay."; * else * if( ad.Value < AffShare ) * say = "I trust " + cha.CharacterName + ". I would follow " + ThirdPersonSingularObject + " if " + ThirdPersonSingularSubject + " asked."; * else * if( ad.Value < AffLoyal ) * say = cha.CharacterName + " is great!"; * else * say = "I love " + cha.CharacterName + ". " + Cap( ThirdPersonSingularSubject ) + " is the best."; * break; * } * } * Speak( say, 2 ); * * } */ } }
public IActionResult CheckIn([FromBody] Cart cart) { try { cart = cart.ThrowIfNull("Cart"); var player = _appDbContext.tblPlayer.FirstOrDefault(p => p.Id == cart.PlayerId).ThrowIfNull("Player"); var currentEvent = _lfContext.tblEvent.FirstOrDefault(e => e.IsActiveEvent).ThrowIfNull("CurrentEvent"); var cartItems = cart.CartItems.ThrowIfNull("CartItems"); foreach (var cartItem in cart.CartItems) { var characterTotalXp = 0; characterTotalXp += cartItem.PurchaseXp; characterTotalXp += cartItem.VpToXp; var character = _lfContext.tblCharacter.FirstOrDefault(c => c.Id == cartItem.CharacterId) .ThrowIfNull($"Character with ID '{cartItem.CharacterId}'"); if (_lfContext.tblCharacterEvents.FirstOrDefault(ce => ce.CharacterId == character.Id && ce.EventId == currentEvent.Id) != null) { return(BadRequest( $"Character '{character.Name}' has already been registered for this event! Please remove.")); } if (character.AccumulatedXP == null) { character.AccumulatedXP = 0; } if (character.AvailableXP == null) { character.AvailableXP = 0; } var baseXp = 40; characterTotalXp += baseXp; character.AccumulatedXP += characterTotalXp; character.AvailableXP += characterTotalXp; var newCharacterEvent = new CharacterEvent { VpToXp = cartItem.VpToXp, XpBought = cartItem.PurchaseXp, EventId = currentEvent.Id, CharacterId = cartItem.CharacterId }; _lfContext.tblCharacter.Update(character); _lfContext.tblCharacterEvents.Add(newCharacterEvent); } _lfContext.SaveChanges(); var totalVp = cartItems.Sum(ci => ci.VpToXp); player.VolunteerPoints = player.VolunteerPoints - totalVp; _appDbContext.tblPlayer.Update(player); _appDbContext.SaveChanges(); return(Ok(player.Id)); } catch (Exception e) { return(BadRequest(e)); } }
protected void OnGermaniumPickup(CharacterEvent data) { goals.Push(new MoveTowards(){Destination = home, Priority = true}); }
// Use this for initialization void Awake() { audioSource = GetComponent <AudioSource> (); playerEvent = GameObject.FindGameObjectWithTag("Player").GetComponent <CharacterEvent> (); generalClip = audioSource.clip; }
protected void OnKill(CharacterEvent data) { trap.AddItem(Generate(NextValue()), ((KillEvent)data).Other.transform.position); }
public void ResetAbilityProvider(CharacterEvent data) { Provider.Reset(); }
private void Awake() { characterEvent = GetComponent <CharacterEvent>(); }
private void OnCharEvent(Window window, CharacterEvent ev) { _characterEvents.Enqueue(ev); }
public virtual void AwardKill(CharacterEvent killed) { GermaniumTracker.Singleton()[target.Team] += 10; }
protected override void Execute(List <GameEntity> entities) { var characterDic = _context.animationEventFunc.characterDic; characterDic["NamikazeMinato"] = new CharacterEvent { animationDic = new Dictionary <string, AnimationEvent>() }; var animationDic = characterDic["NamikazeMinato"].animationDic; // // idle AE // animationDic["idle"] = new AnimationEvent {frameDic = new Dictionary<int, Action>()}; // // var frameDic = animationDic["idle"].frameDic; // frameDic[_context.imageAsset.imageInfos.infos["NamikazeMinato"].animationInfos["idle"].maxFrame] = OnMinatoIdleOver; // jump_0 AE animationDic["jump_0"] = new AnimationEvent() { frameDic = new Dictionary <int, Action <GameEntity> >() }; var frameDic = animationDic["jump_0"].frameDic; frameDic[_context.imageAsset.infos["NamikazeMinato"].animationInfos["jump_0"].maxFrame] = OnMinatoStartJumpOver; // attack_1 AE animationDic["attack_1"] = new AnimationEvent() { frameDic = new Dictionary <int, Action <GameEntity> >() }; frameDic = animationDic["attack_1"].frameDic; frameDic[10] = OnMinatoAttackPlayEffect; frameDic[11] = OnMinatoTaijutsuAttackCheck; animationDic["attack_2"] = new AnimationEvent() { frameDic = new Dictionary <int, Action <GameEntity> >() }; frameDic = animationDic["attack_2"].frameDic; frameDic[6] = OnMinatoTaijutsuAttackCheck; frameDic[11] = OnMinatoTaijutsuAttackCheck; animationDic["attack_3"] = new AnimationEvent() { frameDic = new Dictionary <int, Action <GameEntity> >() }; frameDic = animationDic["attack_3"].frameDic; frameDic[5] = OnMinatoTaijutsuAttackCheck; animationDic["attack_4"] = new AnimationEvent() { frameDic = new Dictionary <int, Action <GameEntity> >() }; frameDic = animationDic["attack_4"].frameDic; frameDic[10] = OnMinatoTaijutsuAttackCheck; animationDic["attack_5"] = new AnimationEvent() { frameDic = new Dictionary <int, Action <GameEntity> >() }; frameDic = animationDic["attack_5"].frameDic; frameDic[12] = OnMinatoTaijutsuAttackCheck; }
public void OnDeath(CharacterEvent data) { GameObject ex = (GameObject)Instantiate(explosion); ex.transform.position = transform.position; }
///<summary>Get Input Event from Character Event</summary> public static InputEvent GetInputEventFromCharacterEvent(CharacterEvent Event) => WidgetBlueprintLibrary_methods.GetInputEventFromCharacterEvent_method.Invoke(Event);