|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- #pragma once
- #ifndef CONSTANTS_H
- #define CONSTANTS_H
-
- #ifndef SCCI
- #define SCCI static const constexpr inline
- #endif
-
- namespace Constants
- {
- // 地图相关
- SCCI int numOfGridPerCell = 1000; // 单位坐标数
- SCCI int rows = 50; // 地图行数
- SCCI int cols = 50; // 地图列数
-
- SCCI int numOfClassroom = 10; // 教室数量
- SCCI int numOfChest = 8; // 宝箱数量
-
- SCCI int maxClassroomProgress = 10000000; // 教室最大进度
- SCCI int maxDoorProgress = 10000000; // 开关门最大进度
- SCCI int maxChestProgress = 10000000; // 宝箱最大进度
- SCCI int maxGateProgress = 18000; // 大门最大进度
-
- SCCI int numOfRequiredClassroomForGate = 7; // 打开大门需要完成的教室数量
- SCCI int numOfRequiredClassroomForHiddenGate = 3; // 打开隐藏门需要完成的教室数量
-
- // 人物属性相关
- SCCI int basicEncourageSpeed = 100;
- SCCI int basicFixSpeed = 123;
- SCCI int basicSpeedOfOpeningOrLocking = 4000;
- SCCI int basicStudentSpeedOfClimbingThroughWindows = 611;
- SCCI int basicTrickerSpeedOfClimbingThroughWindows = 1270;
- SCCI int basicSpeedOfOpenChest = 1000;
-
- SCCI int basicHp = 3000000;
- SCCI int basicMaxGamingAddiction = 60000;
- SCCI int basicEncouragementDegree = 1500000;
- SCCI int basicTimeOfRouse = 1000;
-
- SCCI int basicStudentSpeed = 1270;
- SCCI int basicTrickerSpeed = 1504;
-
- SCCI double basicConcealment = 1;
- SCCI int basicStudentAlertnessRadius = 15 * numOfGridPerCell;
- SCCI int basicTrickerAlertnessRadius = 17 * numOfGridPerCell;
- SCCI int basicStudentViewRange = 10 * numOfGridPerCell;
- SCCI int basicTrickerViewRange = 15 * numOfGridPerCell;
- SCCI int PinningDownRange = 5 * numOfGridPerCell;
-
- SCCI int maxNumOfProp = 3; // 人物道具栏容量
-
- // 攻击相关
-
- SCCI int basicApOfTricker = 1500000;
- SCCI int basicCD = 3000; // 初始子弹冷却
- SCCI int basicCastTime = 500; // 基本前摇时间
- SCCI int basicBackswing = 800; // 基本后摇时间
- SCCI int basicRecoveryFromHit = 3700; // 基本命中攻击恢复时长
- SCCI int basicStunnedTimeOfStudent = 4300;
-
- SCCI int basicBulletMoveSpeed = 3700; // 基本子弹移动速度
- SCCI double basicRemoteAttackRange = 3000; // 基本远程攻击范围
- SCCI double basicAttackShortRange = 1100; // 基本近程攻击范围
- SCCI double basicBulletBombRange = 1000; // 基本子弹爆炸范围
-
- // 道具相关
-
- SCCI int apPropAdd = basicApOfTricker * 12 / 10;
- SCCI int apSpearAdd = basicApOfTricker * 6 / 10;
-
- // 职业相关
- struct Assassin
- {
- SCCI int moveSpeed = basicTrickerSpeed * 11 / 10;
- SCCI double concealment = 1.5;
- SCCI int alertnessRadius = basicTrickerAlertnessRadius * 13 / 10;
- SCCI int viewRange = basicTrickerViewRange * 12 / 10;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicTrickerSpeedOfClimbingThroughWindows;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest;
- };
-
- struct Klee
- {
- SCCI int moveSpeed = basicTrickerSpeed;
- SCCI double concealment = 1;
- SCCI int alertnessRadius = basicTrickerAlertnessRadius;
- SCCI int viewRange = basicTrickerViewRange;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicTrickerSpeedOfClimbingThroughWindows;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest * 11 / 10;
- };
-
- struct ANoisyPerson
- {
- SCCI int moveSpeed = (int)(basicTrickerSpeed * 1.07);
- SCCI double concealment = 0.8;
- SCCI int alertnessRadius = basicTrickerAlertnessRadius * 9 / 10;
- SCCI int viewRange = basicTrickerViewRange;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicTrickerSpeedOfClimbingThroughWindows * 11 / 10;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest * 11 / 10;
- };
-
- struct Idol
- {
- SCCI int moveSpeed = basicTrickerSpeed;
- SCCI double concealment = 0.75;
- SCCI int alertnessRadius = basicTrickerAlertnessRadius;
- SCCI int viewRange = basicTrickerViewRange * 11 / 10;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicTrickerSpeedOfClimbingThroughWindows;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest;
- };
-
- struct Athlete
- {
- SCCI int moveSpeed = basicStudentSpeed * 11 / 10;
- SCCI int maxHp = basicHp;
- SCCI int maxAddiction = basicMaxGamingAddiction * 9 / 10;
- SCCI int fixSpeed = basicFixSpeed * 6 / 10;
- SCCI int encourageSpeed = basicEncourageSpeed * 8 / 10;
- SCCI double concealment = 0.9;
- SCCI int alertnessRadius = basicStudentAlertnessRadius;
- SCCI int viewRange = basicStudentViewRange * 11 / 10;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicStudentSpeedOfClimbingThroughWindows * 12 / 10;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest;
- };
-
- struct Teacher
- {
- SCCI int moveSpeed = basicStudentSpeed * 3 / 4;
- SCCI int maxHp = basicHp * 10;
- SCCI int maxAddiction = basicMaxGamingAddiction * 10;
- SCCI int fixSpeed = basicFixSpeed * 0;
- SCCI int encourageSpeed = basicEncourageSpeed * 7 / 10;
- SCCI double concealment = 0.5;
- SCCI int alertnessRadius = basicStudentAlertnessRadius / 2;
- SCCI int viewRange = basicStudentViewRange * 9 / 10;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicStudentSpeedOfClimbingThroughWindows / 2;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest;
- };
-
- struct StraightAStudent
- {
- SCCI int moveSpeed = basicStudentSpeed * 8 / 10;
- SCCI int maxHp = basicHp * 11 / 10;
- SCCI int maxAddiction = basicMaxGamingAddiction * 13 / 10;
- SCCI int fixSpeed = basicFixSpeed * 11 / 10;
- SCCI int encourageSpeed = basicEncourageSpeed * 8 / 10;
- SCCI double concealment = 0.9;
- SCCI int alertnessRadius = basicStudentAlertnessRadius * 9 / 10;
- SCCI int viewRange = basicStudentViewRange * 9 / 10;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicStudentSpeedOfClimbingThroughWindows * 10 / 12;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest;
- };
-
- struct Robot
- {
- SCCI int moveSpeed = basicStudentSpeed;
- SCCI int maxHp = basicHp * 0.4;
- SCCI int maxAddiction = basicMaxGamingAddiction * 0;
- SCCI int fixSpeed = basicFixSpeed;
- SCCI int encourageSpeed = basicEncourageSpeed * 8 / 10;
- SCCI double concealment = 1;
- SCCI int alertnessRadius = basicStudentAlertnessRadius * 1;
- SCCI int viewRange = basicStudentViewRange;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = 1;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest;
- };
-
- struct TechOtaku
- {
- SCCI int moveSpeed = basicStudentSpeed * 3 / 4;
- SCCI int maxHp = basicHp * 9 / 10;
- SCCI int maxAddiction = basicMaxGamingAddiction * 11 / 10;
- SCCI int fixSpeed = basicFixSpeed * 11 / 10;
- SCCI int encourageSpeed = basicEncourageSpeed * 9 / 10;
- SCCI double concealment = 1;
- SCCI int alertnessRadius = basicStudentAlertnessRadius;
- SCCI int viewRange = basicStudentViewRange * 9 / 10;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicStudentSpeedOfClimbingThroughWindows * 3 / 4;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest;
- };
-
- struct Sunshine
- {
- SCCI int moveSpeed = basicStudentSpeed;
- SCCI int maxHp = basicHp * 32 / 30;
- SCCI int maxAddiction = basicMaxGamingAddiction * 11 / 10;
- SCCI int fixSpeed = basicFixSpeed;
- SCCI int encourageSpeed = basicEncourageSpeed * 2;
- SCCI double concealment = 1;
- SCCI int alertnessRadius = basicStudentAlertnessRadius;
- SCCI int viewRange = basicStudentViewRange;
- SCCI int speedOfOpeningOrLocking = basicSpeedOfOpeningOrLocking;
- SCCI int speedOfClimbingThroughWindows = basicStudentSpeedOfClimbingThroughWindows;
- SCCI int speedOfOpenChest = basicSpeedOfOpenChest;
- };
-
- // 技能相关
- SCCI int maxNumOfSkill = 3;
- SCCI int commonSkillCD = 30000; // 普通技能标准冷却时间
- SCCI int commonSkillTime = 10000; // 普通技能标准持续时间
-
- SCCI int timeOfTrickerStunnedWhenCharge = 7220;
- SCCI int timeOfStudentStunnedWhenCharge = 2090;
-
- SCCI int timeOfTrickerStunnedWhenPunish = 3070;
-
- SCCI int timeOfTrickerSwingingAfterHowl = 800;
- SCCI int timeOfStudentStunnedWhenHowl = 5500;
-
- SCCI int timeOfStunnedWhenJumpyDumpty = 3070;
-
- SCCI double addedTimeOfSpeedWhenInspire = 0.6;
- SCCI int timeOfAddingSpeedWhenInspire = 6000;
- struct CanBeginToCharge
- {
- SCCI int skillCD = commonSkillCD * 4 / 3;
- SCCI int durationTime = commonSkillTime * 1;
- };
-
- struct BecomeInvisible
- {
- SCCI int skillCD = commonSkillCD * 2;
- SCCI int durationTime = commonSkillTime * 6 / 10;
- };
-
- struct Punish
- {
- SCCI int skillCD = commonSkillCD * 1;
- SCCI int durationTime = commonSkillTime * 0;
- };
-
- struct Rouse
- {
- SCCI int skillCD = commonSkillCD * 2;
- SCCI int durationTime = commonSkillTime * 0;
- };
-
- struct Encourage
- {
- SCCI int skillCD = commonSkillCD * 2;
- SCCI int durationTime = commonSkillTime * 0;
- };
-
- struct Inspire
- {
- SCCI int skillCD = commonSkillCD * 2;
- SCCI int durationTime = commonSkillTime * 0;
- };
-
- struct Howl
- {
- SCCI int skillCD = commonSkillCD * 25 / 30;
- SCCI int durationTime = commonSkillTime * 0;
- };
-
- struct ShowTime
- {
- SCCI int skillCD = commonSkillCD * 3;
- SCCI int durationTime = commonSkillTime * 1;
- };
-
- struct JumpyBomb
- {
- SCCI int skillCD = commonSkillCD / 2;
- SCCI int durationTime = commonSkillTime * 3 / 10;
- };
-
- struct UseKnife
- {
- SCCI int skillCD = commonSkillCD * 1;
- SCCI int durationTime = commonSkillTime / 10;
- };
-
- struct UseRobot
- {
- SCCI int skillCD = commonSkillCD / 300;
- SCCI int durationTime = commonSkillTime * 0;
- };
-
- struct WriteAnswers
- {
- SCCI int skillCD = commonSkillCD * 1;
- SCCI int durationTime = commonSkillTime * 0;
- };
-
- struct SummonGolem
- {
- SCCI int skillCD = commonSkillCD * 1;
- SCCI int durationTime = commonSkillTime * 0;
- };
- } // namespace Constants
- #endif
|