mirror of
https://github.com/oshima-studios/OshimaGameModule.git
synced 2025-04-21 11:29:34 +08:00
使用新的状态管理方法
This commit is contained in:
parent
ef0f870468
commit
3a3477ca6e
@ -32,15 +32,13 @@ namespace Oshima.FunGame.OshimaModules.Effects.PassiveEffects
|
|||||||
{
|
{
|
||||||
if (_durative) RemainDuration = Duration;
|
if (_durative) RemainDuration = Duration;
|
||||||
else RemainDurationTurn = DurationTurn;
|
else RemainDurationTurn = DurationTurn;
|
||||||
character.CharacterEffectStates.Add(this, [CharacterState.SkillRestricted]);
|
AddEffectStatesToCharacter(character, [CharacterState.SkillRestricted]);
|
||||||
character.UpdateCharacterState();
|
|
||||||
InterruptCasting(character, Source);
|
InterruptCasting(character, Source);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void OnEffectLost(Character character)
|
public override void OnEffectLost(Character character)
|
||||||
{
|
{
|
||||||
character.CharacterEffectStates.Remove(this);
|
RemoveEffectStatesFromCharacter(character);
|
||||||
character.UpdateCharacterState();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -32,15 +32,13 @@ namespace Oshima.FunGame.OshimaModules.Effects.PassiveEffects
|
|||||||
{
|
{
|
||||||
if (_durative) RemainDuration = Duration;
|
if (_durative) RemainDuration = Duration;
|
||||||
else RemainDurationTurn = DurationTurn;
|
else RemainDurationTurn = DurationTurn;
|
||||||
character.CharacterEffectStates.Add(this, [CharacterState.NotActionable]);
|
AddEffectStatesToCharacter(character, [CharacterState.NotActionable]);
|
||||||
character.UpdateCharacterState();
|
|
||||||
InterruptCasting(character, Source);
|
InterruptCasting(character, Source);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void OnEffectLost(Character character)
|
public override void OnEffectLost(Character character)
|
||||||
{
|
{
|
||||||
character.CharacterEffectStates.Remove(this);
|
RemoveEffectStatesFromCharacter(character);
|
||||||
character.UpdateCharacterState();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -36,8 +36,7 @@ namespace Oshima.FunGame.OshimaModules.Skills
|
|||||||
public override void OnEffectGained(Character character)
|
public override void OnEffectGained(Character character)
|
||||||
{
|
{
|
||||||
Skill.IsInEffect = true;
|
Skill.IsInEffect = true;
|
||||||
character.CharacterEffectTypes.Add(this, [EffectType.Unselectable]);
|
AddEffectTypeToCharacter(character, [EffectType.Unselectable]);
|
||||||
character.UpdateCharacterState();
|
|
||||||
character.ExSPD += 100;
|
character.ExSPD += 100;
|
||||||
character.ExCritRate += 0.08;
|
character.ExCritRate += 0.08;
|
||||||
GamingQueue?.InterruptCastingAsync(character);
|
GamingQueue?.InterruptCastingAsync(character);
|
||||||
@ -49,8 +48,7 @@ namespace Oshima.FunGame.OshimaModules.Skills
|
|||||||
if (!破隐一击)
|
if (!破隐一击)
|
||||||
{
|
{
|
||||||
// 在没有打出破隐一击的情况下,恢复角色状态
|
// 在没有打出破隐一击的情况下,恢复角色状态
|
||||||
character.CharacterEffectTypes.Remove(this);
|
RemoveEffectTypesFromCharacter(character);
|
||||||
character.UpdateCharacterState();
|
|
||||||
}
|
}
|
||||||
character.ExSPD -= 100;
|
character.ExSPD -= 100;
|
||||||
character.ExCritRate -= 0.08;
|
character.ExCritRate -= 0.08;
|
||||||
@ -62,8 +60,7 @@ namespace Oshima.FunGame.OshimaModules.Skills
|
|||||||
{
|
{
|
||||||
首次伤害 = false;
|
首次伤害 = false;
|
||||||
破隐一击 = true;
|
破隐一击 = true;
|
||||||
character.CharacterEffectTypes.Remove(this);
|
RemoveEffectTypesFromCharacter(character);
|
||||||
character.UpdateCharacterState();
|
|
||||||
double d = 伤害加成;
|
double d = 伤害加成;
|
||||||
WriteLine($"[ {character} ] 触发了疾风步破隐一击,获得了 [ {d:0.##} ] 点伤害加成!");
|
WriteLine($"[ {character} ] 触发了疾风步破隐一击,获得了 [ {d:0.##} ] 点伤害加成!");
|
||||||
return d;
|
return d;
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
|
using System.Security.Cryptography;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Milimoe.FunGame.Core.Api.Transmittal;
|
using Milimoe.FunGame.Core.Api.Transmittal;
|
||||||
@ -23,6 +24,35 @@ namespace Oshima.FunGame.WebAPI.Controllers
|
|||||||
return msg.Encrypt(key);
|
return msg.Encrypt(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[HttpGet("gethmacsha256")]
|
||||||
|
public string UseHMACSHA256(string msg, string key)
|
||||||
|
{
|
||||||
|
return Encryption.HmacSha256(msg, key);
|
||||||
|
}
|
||||||
|
|
||||||
|
[HttpGet("getrsa")]
|
||||||
|
public string GetRSA(string msg, string key)
|
||||||
|
{
|
||||||
|
return Encryption.RSADecrypt(msg, key);
|
||||||
|
}
|
||||||
|
|
||||||
|
[HttpGet("setrsa")]
|
||||||
|
public string SetRSA(string msg, string key)
|
||||||
|
{
|
||||||
|
return Encryption.RSAEncrypt(msg, key);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 1: public, 2: private
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpGet("getxml")]
|
||||||
|
public string[] GetRSAXMLString()
|
||||||
|
{
|
||||||
|
using RSACryptoServiceProvider rsa = new();
|
||||||
|
return [rsa.ToXmlString(false), rsa.ToXmlString(true)];
|
||||||
|
}
|
||||||
|
|
||||||
[HttpGet("getlastlogintime")]
|
[HttpGet("getlastlogintime")]
|
||||||
public string GetLastLoginTime()
|
public string GetLastLoginTime()
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user