mirror of
https://port.numenaute.org/aleajactaest/khanat-opennel-code.git
synced 2024-11-17 04:51:52 +00:00
changed all HP, Sap, Stamina and Focus occurences
This commit is contained in:
parent
750200b703
commit
7e3b9d56bb
235 changed files with 4382 additions and 4619 deletions
|
@ -3,30 +3,30 @@ db SERVER:INTERFACES:FLAGS 255
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
db SERVER:CHARACTER_INFO:SCORES:MaxHitPoints 100
|
db SERVER:CHARACTER_INFO:SCORES:MaxChaScore1 100
|
||||||
db SERVER:CHARACTER_INFO:SCORES:BaseHitPoints 120
|
db SERVER:CHARACTER_INFO:SCORES:BaseChaScore1 120
|
||||||
db SERVER:CHARACTER_INFO:SCORES:MaxStamina 120
|
db SERVER:CHARACTER_INFO:SCORES:MaxChaScore2 120
|
||||||
db SERVER:CHARACTER_INFO:SCORES:BaseStamina 100
|
db SERVER:CHARACTER_INFO:SCORES:BaseChaScore2 100
|
||||||
db SERVER:CHARACTER_INFO:SCORES:MaxSap 100
|
db SERVER:CHARACTER_INFO:SCORES:MaxChaScore3 100
|
||||||
db SERVER:CHARACTER_INFO:SCORES:BaseSap 100
|
db SERVER:CHARACTER_INFO:SCORES:BaseChaScore3 100
|
||||||
db SERVER:CHARACTER_INFO:SCORES:MaxFocus 100
|
db SERVER:CHARACTER_INFO:SCORES:MaxChaScore4 100
|
||||||
db SERVER:CHARACTER_INFO:SCORES:BaseFocus 100
|
db SERVER:CHARACTER_INFO:SCORES:BaseChaScore4 100
|
||||||
|
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Constitution 33
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha1 33
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Metabolism 100
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha1Reg 100
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Strength 50
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha2 50
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:WellBalanced 30
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha2Reg 30
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Intelligence 30
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha3 30
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Wisdom 420
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha3Reg 420
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Dexterity 121
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha4 121
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Will 654
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha4Reg 654
|
||||||
|
|
||||||
|
|
||||||
db SERVER:USER:SKILL_POINTS 1000
|
db SERVER:USER:SKILL_POINTS 1000
|
||||||
db SERVER:TARGET:BARS:HP 80
|
db SERVER:TARGET:BARS:ChaScore1 80
|
||||||
db SERVER:TARGET:BARS:STA 32
|
db SERVER:TARGET:BARS:ChaScore2 32
|
||||||
db SERVER:TARGET:BARS:SAP 69
|
db SERVER:TARGET:BARS:ChaScore3 69
|
||||||
db SERVER:TARGET:BARS:FOCUS 95
|
db SERVER:TARGET:BARS:ChaScore4 95
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -347,25 +347,25 @@ db SERVER:STATIC_DATA:BAG_BULK_MAX 400
|
||||||
db SERVER:PACK_ANIMAL:BEAST0:STATUS 15
|
db SERVER:PACK_ANIMAL:BEAST0:STATUS 15
|
||||||
db SERVER:PACK_ANIMAL:BEAST0:TYPE 2
|
db SERVER:PACK_ANIMAL:BEAST0:TYPE 2
|
||||||
db SERVER:PACK_ANIMAL:BEAST0:UID 2
|
db SERVER:PACK_ANIMAL:BEAST0:UID 2
|
||||||
db SERVER:PACK_ANIMAL:BEAST0:HP 40
|
db SERVER:PACK_ANIMAL:BEAST0:ChaScore1 40
|
||||||
db SERVER:PACK_ANIMAL:BEAST0:BULK_MAX 200
|
db SERVER:PACK_ANIMAL:BEAST0:BULK_MAX 200
|
||||||
|
|
||||||
db SERVER:PACK_ANIMAL:BEAST1:STATUS 15
|
db SERVER:PACK_ANIMAL:BEAST1:STATUS 15
|
||||||
db SERVER:PACK_ANIMAL:BEAST1:TYPE 1
|
db SERVER:PACK_ANIMAL:BEAST1:TYPE 1
|
||||||
db SERVER:PACK_ANIMAL:BEAST1:UID 3
|
db SERVER:PACK_ANIMAL:BEAST1:UID 3
|
||||||
db SERVER:PACK_ANIMAL:BEAST1:HP 0
|
db SERVER:PACK_ANIMAL:BEAST1:ChaScore1 0
|
||||||
db SERVER:PACK_ANIMAL:BEAST1:BULK_MAX 300
|
db SERVER:PACK_ANIMAL:BEAST1:BULK_MAX 300
|
||||||
|
|
||||||
db SERVER:PACK_ANIMAL:BEAST2:STATUS 15
|
db SERVER:PACK_ANIMAL:BEAST2:STATUS 15
|
||||||
db SERVER:PACK_ANIMAL:BEAST2:TYPE 2
|
db SERVER:PACK_ANIMAL:BEAST2:TYPE 2
|
||||||
db SERVER:PACK_ANIMAL:BEAST2:UID 4
|
db SERVER:PACK_ANIMAL:BEAST2:UID 4
|
||||||
db SERVER:PACK_ANIMAL:BEAST2:HP 0
|
db SERVER:PACK_ANIMAL:BEAST2:ChaScore1 0
|
||||||
db SERVER:PACK_ANIMAL:BEAST2:BULK_MAX 300
|
db SERVER:PACK_ANIMAL:BEAST2:BULK_MAX 300
|
||||||
|
|
||||||
db SERVER:PACK_ANIMAL:BEAST3:STATUS 15
|
db SERVER:PACK_ANIMAL:BEAST3:STATUS 15
|
||||||
db SERVER:PACK_ANIMAL:BEAST3:TYPE 2
|
db SERVER:PACK_ANIMAL:BEAST3:TYPE 2
|
||||||
db SERVER:PACK_ANIMAL:BEAST3:UID 1
|
db SERVER:PACK_ANIMAL:BEAST3:UID 1
|
||||||
db SERVER:PACK_ANIMAL:BEAST3:HP 30
|
db SERVER:PACK_ANIMAL:BEAST3:ChaScore1 30
|
||||||
db SERVER:PACK_ANIMAL:BEAST3:BULK_MAX 100
|
db SERVER:PACK_ANIMAL:BEAST3:BULK_MAX 100
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
db SERVER:USER:HP_MAX 100
|
db SERVER:USER:ChaScore1_MAX 100
|
||||||
db SERVER:USER:HP 45
|
db SERVER:USER:ChaScore1 45
|
||||||
db SERVER:USER:STA_MAX 100
|
db SERVER:USER:ChaScore2_MAX 100
|
||||||
db SERVER:USER:STA 70
|
db SERVER:USER:ChaScore2 70
|
||||||
db SERVER:USER:SAP_MAX 100
|
db SERVER:USER:ChaScore3_MAX 100
|
||||||
db SERVER:USER:SAP 90
|
db SERVER:USER:chaScore3 90
|
||||||
db SERVER:USER:ACT_MAX 9
|
db SERVER:USER:ACT_MAX 9
|
||||||
db SERVER:USER:ACT 2
|
db SERVER:USER:ACT 2
|
||||||
db SERVER:TARGET:HP_MAX 100
|
db SERVER:TARGET:ChaScore1_MAX 100
|
||||||
db SERVER:TARGET:HP 80
|
db SERVER:TARGET:ChaScore1 80
|
||||||
db SERVER:TARGET:STA_MAX 100
|
db SERVER:TARGET:ChaScore2_MAX 100
|
||||||
db SERVER:TARGET:STA 32
|
db SERVER:TARGET:ChaScore2 32
|
||||||
db SERVER:TARGET:SAP_MAX 100
|
db SERVER:TARGET:ChaScore3_MAX 100
|
||||||
db SERVER:TARGET:SAP 69
|
db SERVER:TARGET:ChaScore3 69
|
||||||
// db SERVER:INVENTORY:1:0:SHEET 123648
|
// db SERVER:INVENTORY:1:0:SHEET 123648
|
||||||
// db SERVER:INVENTORY:2:0:SHEET 137472
|
// db SERVER:INVENTORY:2:0:SHEET 137472
|
||||||
// db SERVER:INVENTORY:2:1:SHEET 232960
|
// db SERVER:INVENTORY:2:1:SHEET 232960
|
||||||
|
|
|
@ -14,24 +14,24 @@ db SERVER:MODIFIERS:BONUS:7:SHEET 1572
|
||||||
db SERVER:MODIFIERS:MALUS:0:SHEET 1572
|
db SERVER:MODIFIERS:MALUS:0:SHEET 1572
|
||||||
db SERVER:MODIFIERS:MALUS:1:SHEET 1572
|
db SERVER:MODIFIERS:MALUS:1:SHEET 1572
|
||||||
db SERVER:MODIFIERS:MALUS:2:SHEET 1572
|
db SERVER:MODIFIERS:MALUS:2:SHEET 1572
|
||||||
db SERVER:CHARACTER_INFO:SCORES:Sap 10
|
db SERVER:CHARACTER_INFO:SCORES:ChaScore3 10
|
||||||
db SERVER:CHARACTER_INFO:SCORES:MaxSap 100
|
db SERVER:CHARACTER_INFO:SCORES:MaxChaScore3 100
|
||||||
db SERVER:CHARACTER_INFO:SCORES:MaxSapStatus 1
|
db SERVER:CHARACTER_INFO:SCORES:MaxChaScore3Status 1
|
||||||
db SERVER:CHARACTER_INFO:SCORES:Stamina 25
|
db SERVER:CHARACTER_INFO:SCORES:ChaScore2 25
|
||||||
db SERVER:CHARACTER_INFO:SCORES:MaxStamina 110
|
db SERVER:CHARACTER_INFO:SCORES:MaxChaScore2 110
|
||||||
db SERVER:CHARACTER_INFO:SCORES:MaxStaminaStatus 2
|
db SERVER:CHARACTER_INFO:SCORES:MaxChaScore2Status 2
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Strength 30
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha2 30
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxStrengthStatus 0
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxCha2Status 0
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Constitution 90
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha1 90
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxConstitutionStatus 1
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxCha1Status 1
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Agility 60
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Agility 60
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxAgilityStatus 2
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxAgilityStatus 2
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Will 45
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Will 45
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxWillStatus 0
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxWillStatus 0
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:WellBalanced 65
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha2Reg 65
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxWellBalancedStatus 2
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxCha2RegStatus 2
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Intelligence 33
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Cha3 33
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxIntelligenceStatus 0
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxCha3Status 0
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Charisme 10
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Charisme 10
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxCharismeStatus 1
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:MaxCharismeStatus 1
|
||||||
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Empathie 62
|
db SERVER:CHARACTER_INFO:CHARACTERISTICS:Empathie 62
|
||||||
|
|
|
@ -264,16 +264,16 @@
|
||||||
<variable entry="UI:SAVE:INSCENE:USER:GUILD_NAME"
|
<variable entry="UI:SAVE:INSCENE:USER:GUILD_NAME"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:USER:HP"
|
<variable entry="UI:SAVE:INSCENE:USER:ChaScore1"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:USER:STA"
|
<variable entry="UI:SAVE:INSCENE:USER:ChaScore2"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:USER:SAP"
|
<variable entry="UI:SAVE:INSCENE:USER:ChaScore3"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:USER:FOCUS"
|
<variable entry="UI:SAVE:INSCENE:USER:ChaScore4"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:USER:ACTION"
|
<variable entry="UI:SAVE:INSCENE:USER:ACTION"
|
||||||
|
@ -300,16 +300,16 @@
|
||||||
<variable entry="UI:SAVE:INSCENE:FRIEND:GUILD_NAME"
|
<variable entry="UI:SAVE:INSCENE:FRIEND:GUILD_NAME"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="true" />
|
value="true" />
|
||||||
<variable entry="UI:SAVE:INSCENE:FRIEND:HP"
|
<variable entry="UI:SAVE:INSCENE:FRIEND:ChaScore1"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:FRIEND:STA"
|
<variable entry="UI:SAVE:INSCENE:FRIEND:ChaScore2"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:FRIEND:SAP"
|
<variable entry="UI:SAVE:INSCENE:FRIEND:ChaScore3"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:FRIEND:FOCUS"
|
<variable entry="UI:SAVE:INSCENE:FRIEND:ChaScore4"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="false" />
|
value="false" />
|
||||||
<variable entry="UI:SAVE:INSCENE:FRIEND:MESSAGES"
|
<variable entry="UI:SAVE:INSCENE:FRIEND:MESSAGES"
|
||||||
|
@ -345,7 +345,7 @@
|
||||||
<variable entry="UI:SAVE:INSCENE:ENEMY:GUILD_NAME"
|
<variable entry="UI:SAVE:INSCENE:ENEMY:GUILD_NAME"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="true" />
|
value="true" />
|
||||||
<variable entry="UI:SAVE:INSCENE:ENEMY:HP"
|
<variable entry="UI:SAVE:INSCENE:ENEMY:ChaScore1"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="true" />
|
value="true" />
|
||||||
<variable entry="UI:SAVE:INSCENE:ENEMY:MESSAGES"
|
<variable entry="UI:SAVE:INSCENE:ENEMY:MESSAGES"
|
||||||
|
@ -357,16 +357,16 @@
|
||||||
<variable entry="UI:SAVE:INSCENE:SOURCE:NAME"
|
<variable entry="UI:SAVE:INSCENE:SOURCE:NAME"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="true" />
|
value="true" />
|
||||||
<variable entry="UI:SAVE:INSCENE:SOURCE:HP"
|
<variable entry="UI:SAVE:INSCENE:SOURCE:ChaScore1"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="true" />
|
value="true" />
|
||||||
<variable entry="UI:SAVE:INSCENE:SOURCE:STA"
|
<variable entry="UI:SAVE:INSCENE:SOURCE:ChaScore2"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="true" />
|
value="true" />
|
||||||
<variable entry="UI:SAVE:INSCENE:SOURCE:SAP"
|
<variable entry="UI:SAVE:INSCENE:SOURCE:ChaScore3"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="true" />
|
value="true" />
|
||||||
<variable entry="UI:SAVE:INSCENE:SOURCE:FOCUS"
|
<variable entry="UI:SAVE:INSCENE:SOURCE:ChaScore4"
|
||||||
type="bool"
|
type="bool"
|
||||||
value="true" />
|
value="true" />
|
||||||
<variable entry="UI:SAVE:INSCENE:SOURCE:ACTION"
|
<variable entry="UI:SAVE:INSCENE:SOURCE:ACTION"
|
||||||
|
@ -2111,76 +2111,76 @@ This MUST follow the Enum MISSION_DESC::TIconId
|
||||||
<define id="win_priority_highest"
|
<define id="win_priority_highest"
|
||||||
value="5" />
|
value="5" />
|
||||||
<!-- For bars, -1024 to +1024 "percent" values from CBarManager -->
|
<!-- For bars, -1024 to +1024 "percent" values from CBarManager -->
|
||||||
<define id="player_hp_percent"
|
<define id="player_ChaScore1_percent"
|
||||||
value="UI:VARIABLES:USER:HP_RATIO" />
|
value="UI:VARIABLES:USER:ChaScore1_RATIO" />
|
||||||
<define id="player_sta_percent"
|
<define id="player_ChaScore2_percent"
|
||||||
value="UI:VARIABLES:USER:STA_RATIO" />
|
value="UI:VARIABLES:USER:ChaScore2_RATIO" />
|
||||||
<define id="player_sap_percent"
|
<define id="player_ChaScore3_percent"
|
||||||
value="UI:VARIABLES:USER:SAP_RATIO" />
|
value="UI:VARIABLES:USER:ChaScore3_RATIO" />
|
||||||
<define id="player_focus_percent"
|
<define id="player_ChaScore4_percent"
|
||||||
value="UI:VARIABLES:USER:FOCUS_RATIO" />
|
value="UI:VARIABLES:USER:ChaScore4_RATIO" />
|
||||||
<define id="player_percent_max"
|
<define id="player_percent_max"
|
||||||
value="1024" />
|
value="1024" />
|
||||||
<!-- For character sheet numerical values from database -->
|
<!-- For character sheet numerical values from database -->
|
||||||
<define id="player_hp"
|
<define id="player_ChaScore1"
|
||||||
value="UI:VARIABLES:USER:HP" />
|
value="UI:VARIABLES:USER:ChaScore1" />
|
||||||
<!-- Local because sent by impulse -->
|
<!-- Local because sent by impulse -->
|
||||||
<define id="player_hp_max"
|
<define id="player_ChaScore1_max"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES0:Max" />
|
value="SERVER:CHARACTER_INFO:SCORES0:Max" />
|
||||||
<define id="player_hp_base"
|
<define id="player_ChaScore1_base"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES0:Base" />
|
value="SERVER:CHARACTER_INFO:SCORES0:Base" />
|
||||||
<define id="player_sta"
|
<define id="player_ChaScore2"
|
||||||
value="UI:VARIABLES:USER:STA" />
|
value="UI:VARIABLES:USER:ChaScore2" />
|
||||||
<!-- Local because sent by impulse -->
|
<!-- Local because sent by impulse -->
|
||||||
<define id="player_sta_max"
|
<define id="player_ChaScore2_max"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES1:Max" />
|
value="SERVER:CHARACTER_INFO:SCORES1:Max" />
|
||||||
<define id="player_sta_base"
|
<define id="player_ChaScore2_base"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES1:Base" />
|
value="SERVER:CHARACTER_INFO:SCORES1:Base" />
|
||||||
<define id="player_sap"
|
<define id="player_ChaScore3"
|
||||||
value="UI:VARIABLES:USER:SAP" />
|
value="UI:VARIABLES:USER:ChaScore3" />
|
||||||
<!-- Local because sent by impulse -->
|
<!-- Local because sent by impulse -->
|
||||||
<define id="player_sap_max"
|
<define id="player_ChaScore3_max"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES2:Max" />
|
value="SERVER:CHARACTER_INFO:SCORES2:Max" />
|
||||||
<define id="player_sap_base"
|
<define id="player_ChaScore3_base"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES2:Base" />
|
value="SERVER:CHARACTER_INFO:SCORES2:Base" />
|
||||||
<define id="player_focus"
|
<define id="player_ChaScore4"
|
||||||
value="UI:VARIABLES:USER:FOCUS" />
|
value="UI:VARIABLES:USER:ChaScore4" />
|
||||||
<!-- Local because sent by impulse -->
|
<!-- Local because sent by impulse -->
|
||||||
<define id="player_focus_max"
|
<define id="player_ChaScore4_max"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES3:Max" />
|
value="SERVER:CHARACTER_INFO:SCORES3:Max" />
|
||||||
<define id="player_focus_base"
|
<define id="player_ChaScore4_base"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES3:Base" />
|
value="SERVER:CHARACTER_INFO:SCORES3:Base" />
|
||||||
<define id="player_hpreg"
|
<define id="player_ChaScore1reg"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES0:Regen" />
|
value="SERVER:CHARACTER_INFO:SCORES0:Regen" />
|
||||||
<define id="player_hpreg_base"
|
<define id="player_ChaScore1reg_base"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES0:BaseRegen" />
|
value="SERVER:CHARACTER_INFO:SCORES0:BaseRegen" />
|
||||||
<define id="player_stareg"
|
<define id="player_ChaScore2reg"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES1:Regen" />
|
value="SERVER:CHARACTER_INFO:SCORES1:Regen" />
|
||||||
<define id="player_stareg_base"
|
<define id="player_ChaScore2reg_base"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES1:BaseRegen" />
|
value="SERVER:CHARACTER_INFO:SCORES1:BaseRegen" />
|
||||||
<define id="player_sapreg"
|
<define id="player_ChaScore3reg"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES2:Regen" />
|
value="SERVER:CHARACTER_INFO:SCORES2:Regen" />
|
||||||
<define id="player_sapreg_base"
|
<define id="player_ChaScore3reg_base"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES2:BaseRegen" />
|
value="SERVER:CHARACTER_INFO:SCORES2:BaseRegen" />
|
||||||
<define id="player_focreg"
|
<define id="player_ChaScore4reg"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES3:Regen" />
|
value="SERVER:CHARACTER_INFO:SCORES3:Regen" />
|
||||||
<define id="player_focreg_base"
|
<define id="player_ChaScore4reg_base"
|
||||||
value="SERVER:CHARACTER_INFO:SCORES3:BaseRegen" />
|
value="SERVER:CHARACTER_INFO:SCORES3:BaseRegen" />
|
||||||
<define id="player_carac_hpmax"
|
<define id="player_carac_ChaScore1max"
|
||||||
value="SERVER:CHARACTER_INFO:CHARACTERISTICS0:VALUE" />
|
value="SERVER:CHARACTER_INFO:CHARACTERISTICS0:VALUE" />
|
||||||
<define id="player_carac_hpreg"
|
<define id="player_carac_ChaScore1reg"
|
||||||
value="SERVER:CHARACTER_INFO:CHARACTERISTICS1:VALUE" />
|
value="SERVER:CHARACTER_INFO:CHARACTERISTICS1:VALUE" />
|
||||||
<define id="player_carac_sapmax"
|
<define id="player_carac_ChaScore3max"
|
||||||
value="SERVER:CHARACTER_INFO:CHARACTERISTICS2:VALUE" />
|
value="SERVER:CHARACTER_INFO:CHARACTERISTICS2:VALUE" />
|
||||||
<define id="player_carac_sapreg"
|
<define id="player_carac_ChaScore3reg"
|
||||||
value="SERVER:CHARACTER_INFO:CHARACTERISTICS3:VALUE" />
|
value="SERVER:CHARACTER_INFO:CHARACTERISTICS3:VALUE" />
|
||||||
<define id="player_carac_stamax"
|
<define id="player_carac_ChaScore2max"
|
||||||
value="SERVER:CHARACTER_INFO:CHARACTERISTICS4:VALUE" />
|
value="SERVER:CHARACTER_INFO:CHARACTERISTICS4:VALUE" />
|
||||||
<define id="player_carac_stareg"
|
<define id="player_carac_ChaScore2reg"
|
||||||
value="SERVER:CHARACTER_INFO:CHARACTERISTICS5:VALUE" />
|
value="SERVER:CHARACTER_INFO:CHARACTERISTICS5:VALUE" />
|
||||||
<define id="player_carac_wishmax"
|
<define id="player_carac_ChaScore4max"
|
||||||
value="SERVER:CHARACTER_INFO:CHARACTERISTICS6:VALUE" />
|
value="SERVER:CHARACTER_INFO:CHARACTERISTICS6:VALUE" />
|
||||||
<define id="player_carac_wishreg"
|
<define id="player_carac_ChaScore4reg"
|
||||||
value="SERVER:CHARACTER_INFO:CHARACTERISTICS7:VALUE" />
|
value="SERVER:CHARACTER_INFO:CHARACTERISTICS7:VALUE" />
|
||||||
<define id="player_protect_acid"
|
<define id="player_protect_acid"
|
||||||
value="SERVER:CHARACTER_INFO:MAGIC_PROTECTION:0:VALUE" />
|
value="SERVER:CHARACTER_INFO:MAGIC_PROTECTION:0:VALUE" />
|
||||||
|
@ -2923,13 +2923,13 @@ This MUST follow the Enum MISSION_DESC::TIconId
|
||||||
<!-- ************************** -->
|
<!-- ************************** -->
|
||||||
<!-- * PLAYER JAUGES DISPLAY * -->
|
<!-- * PLAYER JAUGES DISPLAY * -->
|
||||||
<!-- ************************** -->
|
<!-- ************************** -->
|
||||||
<variable entry="UI:SAVE:PLAYER:DISP_SAP"
|
<variable entry="UI:SAVE:PLAYER:DISP_ChaScore3"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="1" />
|
value="1" />
|
||||||
<variable entry="UI:SAVE:PLAYER:DISP_STA"
|
<variable entry="UI:SAVE:PLAYER:DISP_ChaScore2"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="1" />
|
value="1" />
|
||||||
<variable entry="UI:SAVE:PLAYER:DISP_FOC"
|
<variable entry="UI:SAVE:PLAYER:DISP_ChaScore4"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="1" />
|
value="1" />
|
||||||
<!-- If player wants the Current Action window out of the player window -->
|
<!-- If player wants the Current Action window out of the player window -->
|
||||||
|
@ -3464,15 +3464,15 @@ This MUST follow the Enum MISSION_DESC::TIconId
|
||||||
<!-- ***************************** -->
|
<!-- ***************************** -->
|
||||||
<!-- * COMMON DEFINE COLORS * -->
|
<!-- * COMMON DEFINE COLORS * -->
|
||||||
<!-- ***************************** -->
|
<!-- ***************************** -->
|
||||||
<define id="hp_color"
|
<define id="ChaScore1_color"
|
||||||
value="255 64 0 255" />
|
value="255 64 0 255" />
|
||||||
<define id="hp_color_neg"
|
<define id="ChaScore1_color_neg"
|
||||||
value="127 32 0 255" />
|
value="127 32 0 255" />
|
||||||
<define id="sta_color"
|
<define id="ChaScore2_color"
|
||||||
value="255 0 255 255" />
|
value="255 0 255 255" />
|
||||||
<define id="sap_color"
|
<define id="ChaScore3_color"
|
||||||
value="72 255 0 255" />
|
value="72 255 0 255" />
|
||||||
<define id="focus_color"
|
<define id="ChaScore4_color"
|
||||||
value="0 128 255 255" />
|
value="0 128 255 255" />
|
||||||
<define id="bulk_color"
|
<define id="bulk_color"
|
||||||
value="215 185 75 255" />
|
value="215 185 75 255" />
|
||||||
|
@ -3749,69 +3749,69 @@ This MUST follow the Enum MISSION_DESC::TIconId
|
||||||
value_from_code="getMaxTeamMember()" />
|
value_from_code="getMaxTeamMember()" />
|
||||||
<define id="max_fame_tribe"
|
<define id="max_fame_tribe"
|
||||||
value_from_code="lua:getNbTribeFameIndex()" />
|
value_from_code="lua:getNbTribeFameIndex()" />
|
||||||
<!-- Team Members (FOCUS not setuped) -->
|
<!-- Team Members (ChaScore4 not setuped) -->
|
||||||
<variable entry="UI:VARIABLES:BARS:TEAM:$i:HP"
|
<variable entry="UI:VARIABLES:BARS:TEAM:$i:ChaScore1"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0"
|
value="0"
|
||||||
size="%max_team_member" />
|
size="%max_team_member" />
|
||||||
<variable entry="UI:VARIABLES:BARS:TEAM:$i:STA"
|
<variable entry="UI:VARIABLES:BARS:TEAM:$i:ChaScore2"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0"
|
value="0"
|
||||||
size="%max_team_member" />
|
size="%max_team_member" />
|
||||||
<variable entry="UI:VARIABLES:BARS:TEAM:$i:SAP"
|
<variable entry="UI:VARIABLES:BARS:TEAM:$i:ChaScore3"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0"
|
value="0"
|
||||||
size="%max_team_member" />
|
size="%max_team_member" />
|
||||||
<!-- Animal (only HP) -->
|
<!-- Animal (only ChaScore1) -->
|
||||||
<variable entry="UI:VARIABLES:BARS:ANIMAL:$i:HP"
|
<variable entry="UI:VARIABLES:BARS:ANIMAL:$i:ChaScore1"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0"
|
value="0"
|
||||||
size="%max_animal" />
|
size="%max_animal" />
|
||||||
<!-- Target -->
|
<!-- Target -->
|
||||||
<variable entry="UI:VARIABLES:BARS:TARGET:HP"
|
<variable entry="UI:VARIABLES:BARS:TARGET:ChaScore1"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:BARS:TARGET:STA"
|
<variable entry="UI:VARIABLES:BARS:TARGET:ChaScore2"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:BARS:TARGET:SAP"
|
<variable entry="UI:VARIABLES:BARS:TARGET:ChaScore3"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:BARS:TARGET:FOCUS"
|
<variable entry="UI:VARIABLES:BARS:TARGET:ChaScore4"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<define id="target_hp"
|
<define id="target_ChaScore1"
|
||||||
value="UI:VARIABLES:BARS:TARGET:HP" />
|
value="UI:VARIABLES:BARS:TARGET:ChaScore1" />
|
||||||
<define id="target_sta"
|
<define id="target_ChaScore2"
|
||||||
value="UI:VARIABLES:BARS:TARGET:STA" />
|
value="UI:VARIABLES:BARS:TARGET:ChaScore2" />
|
||||||
<define id="target_sap"
|
<define id="target_ChaScore3"
|
||||||
value="UI:VARIABLES:BARS:TARGET:SAP" />
|
value="UI:VARIABLES:BARS:TARGET:ChaScore3" />
|
||||||
<define id="target_focus"
|
<define id="target_ChaScore4"
|
||||||
value="UI:VARIABLES:BARS:TARGET:FOCUS" />
|
value="UI:VARIABLES:BARS:TARGET:ChaScore4" />
|
||||||
<!-- Special USER. -1024 to +1024 "percent" values -->
|
<!-- Special USER. -1024 to +1024 "percent" values -->
|
||||||
<variable entry="UI:VARIABLES:USER:HP_RATIO"
|
<variable entry="UI:VARIABLES:USER:ChaScore1_RATIO"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:USER:STA_RATIO"
|
<variable entry="UI:VARIABLES:USER:ChaScore2_RATIO"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:USER:SAP_RATIO"
|
<variable entry="UI:VARIABLES:USER:ChaScore3_RATIO"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:USER:FOCUS_RATIO"
|
<variable entry="UI:VARIABLES:USER:ChaScore4_RATIO"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<!-- Special USER: Actual 0 to 32767 "real clamped to 0" values -->
|
<!-- Special USER: Actual 0 to 32767 "real clamped to 0" values -->
|
||||||
<variable entry="UI:VARIABLES:USER:HP"
|
<variable entry="UI:VARIABLES:USER:ChaScore1"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:USER:STA"
|
<variable entry="UI:VARIABLES:USER:ChaScore2"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:USER:SAP"
|
<variable entry="UI:VARIABLES:USER:ChaScore3"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<variable entry="UI:VARIABLES:USER:FOCUS"
|
<variable entry="UI:VARIABLES:USER:ChaScore4"
|
||||||
type="sint32"
|
type="sint32"
|
||||||
value="0" />
|
value="0" />
|
||||||
<!-- AH when Target Bars change from DB -->
|
<!-- AH when Target Bars change from DB -->
|
||||||
|
|
|
@ -1005,11 +1005,11 @@
|
||||||
text_ref="BR BR"
|
text_ref="BR BR"
|
||||||
w="100"
|
w="100"
|
||||||
prompt=""
|
prompt=""
|
||||||
enter_loose_focus="true"
|
enter_loose_ChaScore4="true"
|
||||||
multi_line="false"
|
multi_line="false"
|
||||||
onenter="game_config_change_screen_ratio_custom"
|
onenter="game_config_change_screen_ratio_custom"
|
||||||
enter_recover_focus="false"
|
enter_recover_ChaScore4="false"
|
||||||
reset_focus_on_hide="true"
|
reset_ChaScore4_on_hide="true"
|
||||||
max_historic="0"
|
max_historic="0"
|
||||||
entry_type="positive_float"
|
entry_type="positive_float"
|
||||||
max_float_prec="5"
|
max_float_prec="5"
|
||||||
|
@ -1334,7 +1334,7 @@
|
||||||
y="0"
|
y="0"
|
||||||
hardtext="uiHud" />
|
hardtext="uiHud" />
|
||||||
<!--<instance template="tgcw_checkbox" id="suc" text="uiShowUnderCursor" posref="TL TL" x="0" y="-20" />
|
<!--<instance template="tgcw_checkbox" id="suc" text="uiShowUnderCursor" posref="TL TL" x="0" y="-20" />
|
||||||
<instance template="tgcw_checkbox" id="sta" text="uiShowTargeted" posref="BL TL" posparent="suc" x="0" y="-12" />-->
|
<instance template="tgcw_checkbox" id="ChaScore2" text="uiShowTargeted" posref="BL TL" posparent="suc" x="0" y="-12" />-->
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="swrc"
|
id="swrc"
|
||||||
text="uiSelectWithRClick"
|
text="uiSelectWithRClick"
|
||||||
|
@ -2042,35 +2042,35 @@
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_user_hp"
|
id="is_user_ChaScore1"
|
||||||
text="uiHP"
|
text="uiChaScore1"
|
||||||
tooltip="uittHP"
|
tooltip="uittChaScore1"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_user_guild_name"
|
posparent="is_user_guild_name"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_user_sap"
|
id="is_user_ChaScore3"
|
||||||
text="uiSAP"
|
text="uiChaScore3"
|
||||||
tooltip="uittSAP"
|
tooltip="uittChaScore3"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_user_hp"
|
posparent="is_user_ChaScore1"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_user_sta"
|
id="is_user_ChaScore2"
|
||||||
text="uiSTA"
|
text="uiChaScore2"
|
||||||
tooltip="uittSTA"
|
tooltip="uittChaScore2"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_user_sap"
|
posparent="is_user_ChaScore3"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_user_focus"
|
id="is_user_ChaScore4"
|
||||||
text="uiFOC"
|
text="uiChaScore4"
|
||||||
tooltip="uittFocus"
|
tooltip="uittChaScore4"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_user_sta"
|
posparent="is_user_ChaScore2"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
|
@ -2078,7 +2078,7 @@
|
||||||
text="uiActionBar"
|
text="uiActionBar"
|
||||||
tooltip="uittActionBar"
|
tooltip="uittActionBar"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_user_focus"
|
posparent="is_user_ChaScore4"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
|
@ -2159,35 +2159,35 @@
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_friend_hp"
|
id="is_friend_ChaScore1"
|
||||||
text="uiHP"
|
text="uiChaScore1"
|
||||||
tooltip="uittHP"
|
tooltip="uittChaScore1"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_friend_guild_name"
|
posparent="is_friend_guild_name"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_friend_sap"
|
id="is_friend_ChaScore3"
|
||||||
text="uiSAP"
|
text="uiChaScore3"
|
||||||
tooltip="uittSTA"
|
tooltip="uittChaScore3"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_friend_hp"
|
posparent="is_friend_ChaScore1"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_friend_sta"
|
id="is_friend_ChaScore2"
|
||||||
text="uiSTA"
|
text="uiChaScore2"
|
||||||
tooltip="uittSAP"
|
tooltip="uittChaScore2"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_friend_sap"
|
posparent="is_friend_ChaScore3"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_friend_focus"
|
id="is_friend_ChaScore4"
|
||||||
text="uiFOC"
|
text="uiChaScore4"
|
||||||
tooltip="uittFocus"
|
tooltip="uittChaScore4"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_friend_sta"
|
posparent="is_friend_ChaScore2"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
|
@ -2195,7 +2195,7 @@
|
||||||
text="uiPvpLogo"
|
text="uiPvpLogo"
|
||||||
tooltip="uittPvpLogo"
|
tooltip="uittPvpLogo"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_friend_focus"
|
posparent="is_friend_ChaScore4"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
|
@ -2300,9 +2300,9 @@
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
<instance template="tgcw_checkbox"
|
<instance template="tgcw_checkbox"
|
||||||
id="is_enemy_hp"
|
id="is_enemy_ChaScore1"
|
||||||
text="uiHP"
|
text="uiChaScore1"
|
||||||
tooltip="uittHP"
|
tooltip="uittChaScore1"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_enemy_guild_name"
|
posparent="is_enemy_guild_name"
|
||||||
x="0"
|
x="0"
|
||||||
|
@ -2312,7 +2312,7 @@
|
||||||
text="uiPvpLogo"
|
text="uiPvpLogo"
|
||||||
tooltip="uittPvpLogo"
|
tooltip="uittPvpLogo"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="is_enemy_hp"
|
posparent="is_enemy_ChaScore1"
|
||||||
x="0"
|
x="0"
|
||||||
y="-4" />
|
y="-4" />
|
||||||
</group>
|
</group>
|
||||||
|
@ -3222,7 +3222,7 @@
|
||||||
preset="UI:TEMP:PRESET_FX" />
|
preset="UI:TEMP:PRESET_FX" />
|
||||||
<!--
|
<!--
|
||||||
<param ui="hud:suc:c" type="cfg" widget="boolbut" link="ShowNameUnderCursor" realtime="true"/>
|
<param ui="hud:suc:c" type="cfg" widget="boolbut" link="ShowNameUnderCursor" realtime="true"/>
|
||||||
<param ui="hud:sta:c" type="cfg" widget="boolbut" link="ShowNameSelected" realtime="true"/>
|
<param ui="hud:ChaScore2:c" type="cfg" widget="boolbut" link="ShowNameSelected" realtime="true"/>
|
||||||
-->
|
-->
|
||||||
<param ui="hud:swrc:c"
|
<param ui="hud:swrc:c"
|
||||||
type="cfg"
|
type="cfg"
|
||||||
|
@ -3548,25 +3548,25 @@
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:USER:GUILD_NAME"
|
link="UI:SAVE:INSCENE:USER:GUILD_NAME"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_user:is_user_hp:c"
|
<param ui="in_scene_user:is_user_ChaScore1:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:USER:HP"
|
link="UI:SAVE:INSCENE:USER:ChaScore1"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_user:is_user_sap:c"
|
<param ui="in_scene_user:is_user_ChaScore3:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:USER:SAP"
|
link="UI:SAVE:INSCENE:USER:ChaScore3"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_user:is_user_sta:c"
|
<param ui="in_scene_user:is_user_ChaScore2:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:USER:STA"
|
link="UI:SAVE:INSCENE:USER:ChaScore2"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_user:is_user_focus:c"
|
<param ui="in_scene_user:is_user_ChaScore4:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:USER:FOCUS"
|
link="UI:SAVE:INSCENE:USER:ChaScore4"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_user:is_user_action:c"
|
<param ui="in_scene_user:is_user_action:c"
|
||||||
type="db"
|
type="db"
|
||||||
|
@ -3603,25 +3603,25 @@
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:FRIEND:GUILD_NAME"
|
link="UI:SAVE:INSCENE:FRIEND:GUILD_NAME"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_friend:is_friend_hp:c"
|
<param ui="in_scene_friend:is_friend_ChaScore1:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:FRIEND:HP"
|
link="UI:SAVE:INSCENE:FRIEND:ChaScore1"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_friend:is_friend_sap:c"
|
<param ui="in_scene_friend:is_friend_ChaScore3:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:FRIEND:SAP"
|
link="UI:SAVE:INSCENE:FRIEND:ChaScore3"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_friend:is_friend_sta:c"
|
<param ui="in_scene_friend:is_friend_ChaScore2:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:FRIEND:STA"
|
link="UI:SAVE:INSCENE:FRIEND:ChaScore2"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_friend:is_friend_focus:c"
|
<param ui="in_scene_friend:is_friend_ChaScore4:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:FRIEND:FOCUS"
|
link="UI:SAVE:INSCENE:FRIEND:ChaScore4"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_friend:is_friend_pvp_logo:c"
|
<param ui="in_scene_friend:is_friend_pvp_logo:c"
|
||||||
type="db"
|
type="db"
|
||||||
|
@ -3673,10 +3673,10 @@
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:ENEMY:GUILD_NAME"
|
link="UI:SAVE:INSCENE:ENEMY:GUILD_NAME"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_enemy:is_enemy_hp:c"
|
<param ui="in_scene_enemy:is_enemy_ChaScore1:c"
|
||||||
type="db"
|
type="db"
|
||||||
widget="boolbut"
|
widget="boolbut"
|
||||||
link="UI:SAVE:INSCENE:ENEMY:HP"
|
link="UI:SAVE:INSCENE:ENEMY:ChaScore1"
|
||||||
realtime="true" />
|
realtime="true" />
|
||||||
<param ui="in_scene_enemy:is_ennemy_pvp_logo:c"
|
<param ui="in_scene_enemy:is_ennemy_pvp_logo:c"
|
||||||
type="db"
|
type="db"
|
||||||
|
|
|
@ -758,46 +758,46 @@
|
||||||
fontsize="10"
|
fontsize="10"
|
||||||
color="255 255 255 255" />
|
color="255 255 255 255" />
|
||||||
<instance template="tipc_score"
|
<instance template="tipc_score"
|
||||||
id="lif"
|
id="ChaScore1"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
x="8"
|
x="8"
|
||||||
y="-20"
|
y="-20"
|
||||||
w="-8"
|
w="-8"
|
||||||
tooltip="uittIdentityHP"
|
tooltip="uittIdentityChaScore1"
|
||||||
text="uiHP"
|
text="uiChaScore1"
|
||||||
val="%player_hp"
|
val="%player_ChaScore1"
|
||||||
maxval="%player_hp_max"
|
maxval="%player_ChaScore1_max"
|
||||||
baseval="%player_hp_base" />
|
baseval="%player_ChaScore1_base" />
|
||||||
<instance template="tipc_score"
|
<instance template="tipc_score"
|
||||||
id="sap"
|
id="ChaScore3"
|
||||||
posparent="lif"
|
posparent="ChaScore1"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
tooltip="uittIdentitySap"
|
tooltip="uittIdentityChaScore3"
|
||||||
text="uiSap"
|
text="uiChaScore3"
|
||||||
val="%player_sap"
|
val="%player_ChaScore3"
|
||||||
maxval="%player_sap_max"
|
maxval="%player_ChaScore3_max"
|
||||||
baseval="%player_sap_base" />
|
baseval="%player_ChaScore3_base" />
|
||||||
<instance template="tipc_score"
|
<instance template="tipc_score"
|
||||||
id="sta"
|
id="ChaScore2"
|
||||||
posparent="sap"
|
posparent="ChaScore3"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
tooltip="uittIdentitySta"
|
tooltip="uittIdentityChaScore2"
|
||||||
text="uiStamina"
|
text="uiChaScore2"
|
||||||
val="%player_sta"
|
val="%player_ChaScore2"
|
||||||
maxval="%player_sta_max"
|
maxval="%player_ChaScore2_max"
|
||||||
baseval="%player_sta_base" />
|
baseval="%player_ChaScore2_base" />
|
||||||
<instance template="tipc_score"
|
<instance template="tipc_score"
|
||||||
id="foc"
|
id="ChaScore4"
|
||||||
posparent="sta"
|
posparent="ChaScore2"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
tooltip="uittIdentityFoc"
|
tooltip="uittIdentityChaScore4"
|
||||||
text="uiFocus"
|
text="uiChaScore4"
|
||||||
val="%player_focus"
|
val="%player_ChaScore4"
|
||||||
maxval="%player_focus_max"
|
maxval="%player_ChaScore4_max"
|
||||||
baseval="%player_focus_base" />
|
baseval="%player_ChaScore4_base" />
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="Regen"
|
id="Regen"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
|
@ -808,42 +808,42 @@
|
||||||
fontsize="10"
|
fontsize="10"
|
||||||
color="255 255 255 255" />
|
color="255 255 255 255" />
|
||||||
<instance template="tipc_characReg"
|
<instance template="tipc_characReg"
|
||||||
id="hpreg"
|
id="ChaScore1reg"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
x="8"
|
x="8"
|
||||||
y="-105"
|
y="-105"
|
||||||
w="-8"
|
w="-8"
|
||||||
text="uiHP"
|
text="uiChaScore1"
|
||||||
val="%player_hpreg"
|
val="%player_ChaScore1reg"
|
||||||
baseval="%player_hpreg_base"
|
baseval="%player_ChaScore1reg_base"
|
||||||
tooltip="uittIdentityHPReg" />
|
tooltip="uittIdentityChaScore1Reg" />
|
||||||
<instance template="tipc_characReg"
|
<instance template="tipc_characReg"
|
||||||
id="sapreg"
|
id="ChaScore3reg"
|
||||||
posparent="hpreg"
|
posparent="ChaScore1reg"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiSap"
|
text="uiChaScore3"
|
||||||
val="%player_sapreg"
|
val="%player_ChaScore3reg"
|
||||||
baseval="%player_sapreg_base"
|
baseval="%player_ChaScore3reg_base"
|
||||||
tooltip="uittIdentitySapReg" />
|
tooltip="uittIdentityChaScore3Reg" />
|
||||||
<instance template="tipc_characReg"
|
<instance template="tipc_characReg"
|
||||||
id="stareg"
|
id="ChaScore2reg"
|
||||||
posparent="sapreg"
|
posparent="ChaScore3reg"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiStamina"
|
text="uiChaScore2"
|
||||||
val="%player_stareg"
|
val="%player_ChaScore2reg"
|
||||||
baseval="%player_stareg_base"
|
baseval="%player_ChaScore2reg_base"
|
||||||
tooltip="uittIdentityStaReg" />
|
tooltip="uittIdentityChaScore2Reg" />
|
||||||
<instance template="tipc_characReg"
|
<instance template="tipc_characReg"
|
||||||
id="focreg"
|
id="ChaScore4reg"
|
||||||
posparent="stareg"
|
posparent="ChaScore2reg"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiFocus"
|
text="uiChaScore4"
|
||||||
val="%player_focreg"
|
val="%player_ChaScore4reg"
|
||||||
baseval="%player_focreg_base"
|
baseval="%player_ChaScore4reg_base"
|
||||||
tooltip="uittIdentityFocReg" />
|
tooltip="uittIdentityChaScore4Reg" />
|
||||||
</group>
|
</group>
|
||||||
<instance template="inner_thin_border"
|
<instance template="inner_thin_border"
|
||||||
posparent="black"
|
posparent="black"
|
||||||
|
@ -875,71 +875,71 @@
|
||||||
h="172"
|
h="172"
|
||||||
inherit_gc_alpha="true">
|
inherit_gc_alpha="true">
|
||||||
<instance template="tipc_charac"
|
<instance template="tipc_charac"
|
||||||
id="hpmax"
|
id="ChaScore1max"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
x="8"
|
x="8"
|
||||||
y="-20"
|
y="-20"
|
||||||
w="-8"
|
w="-8"
|
||||||
text="uiCarac_HpMax"
|
text="uiCarac_ChaScore1Max"
|
||||||
val="%player_carac_hpmax"
|
val="%player_carac_ChaScore1max"
|
||||||
tooltip="uittIdentityCons" />
|
tooltip="uittIdentityCha1" />
|
||||||
<instance template="tipc_charac"
|
<instance template="tipc_charac"
|
||||||
id="sapmax"
|
id="ChaScore3max"
|
||||||
posparent="hpmax"
|
posparent="ChaScore1max"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiCarac_SapMax"
|
text="uiCarac_ChaScore3Max"
|
||||||
val="%player_carac_sapmax"
|
val="%player_carac_ChaScore3max"
|
||||||
tooltip="uittIdentityInt" />
|
tooltip="uittIdentityCha3" />
|
||||||
<instance template="tipc_charac"
|
<instance template="tipc_charac"
|
||||||
id="stamax"
|
id="ChaScore2max"
|
||||||
posparent="sapmax"
|
posparent="ChaScore3max"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiCarac_StaMax"
|
text="uiCarac_ChaScore2Max"
|
||||||
val="%player_carac_stamax"
|
val="%player_carac_ChaScore2max"
|
||||||
tooltip="uittIdentityStr" />
|
tooltip="uittIdentityCha2" />
|
||||||
<instance template="tipc_charac"
|
<instance template="tipc_charac"
|
||||||
id="focmax"
|
id="ChaScore4max"
|
||||||
posparent="stamax"
|
posparent="ChaScore2max"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiCarac_WishMax"
|
text="uiCarac_ChaScore4Max"
|
||||||
val="%player_carac_wishmax"
|
val="%player_carac_ChaScore4max"
|
||||||
tooltip="uittIdentityDex" />
|
tooltip="uittIdentityCha4" />
|
||||||
<instance template="tipc_charac"
|
<instance template="tipc_charac"
|
||||||
id="hpreg"
|
id="ChaScore1reg"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
x="8"
|
x="8"
|
||||||
y="-105"
|
y="-105"
|
||||||
w="-8"
|
w="-8"
|
||||||
text="uiCarac_HpReg"
|
text="uiCarac_ChaScore1Reg"
|
||||||
val="%player_carac_hpreg"
|
val="%player_carac_ChaScore1reg"
|
||||||
tooltip="uittIdentityMeta" />
|
tooltip="uittIdentityCha1Reg" />
|
||||||
<instance template="tipc_charac"
|
<instance template="tipc_charac"
|
||||||
id="sapreg"
|
id="ChaScore3reg"
|
||||||
posparent="hpreg"
|
posparent="ChaScore1reg"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiCarac_SapReg"
|
text="uiCarac_ChaScore3Reg"
|
||||||
val="%player_carac_sapreg"
|
val="%player_carac_ChaScore3reg"
|
||||||
tooltip="uittIdentityWis" />
|
tooltip="uittIdentityCha3Reg" />
|
||||||
<instance template="tipc_charac"
|
<instance template="tipc_charac"
|
||||||
id="stareg"
|
id="ChaScore2reg"
|
||||||
posparent="sapreg"
|
posparent="ChaScore3reg"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiCarac_StaReg"
|
text="uiCarac_ChaScore2Reg"
|
||||||
val="%player_carac_stareg"
|
val="%player_carac_stareg"
|
||||||
tooltip="uittIdentityWB" />
|
tooltip="uittIdentityCha2Reg" />
|
||||||
<instance template="tipc_charac"
|
<instance template="tipc_charac"
|
||||||
id="focreg"
|
id="ChaScore4reg"
|
||||||
posparent="stareg"
|
posparent="ChaScore2reg"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
y="0"
|
y="0"
|
||||||
text="uiCarac_WishReg"
|
text="uiCarac_ChaScore4Reg"
|
||||||
val="%player_carac_wishreg"
|
val="%player_carac_ChaScore4reg"
|
||||||
tooltip="uittIdentityWill" />
|
tooltip="uittIdentityCha4Reg" />
|
||||||
</group>
|
</group>
|
||||||
<instance template="inner_thin_border"
|
<instance template="inner_thin_border"
|
||||||
posparent="black"
|
posparent="black"
|
||||||
|
|
|
@ -94,19 +94,19 @@
|
||||||
<view type="bar3"
|
<view type="bar3"
|
||||||
id="jauges"
|
id="jauges"
|
||||||
posref="TR TR"
|
posref="TR TR"
|
||||||
color1="%focus_color"
|
color1="%ChaScore4_color"
|
||||||
value1="%target_focus"
|
value1="%target_ChaScore4"
|
||||||
range1="UI:CONST:127"
|
range1="UI:CONST:127"
|
||||||
color2="%sap_color"
|
color2="%ChaScore3_color"
|
||||||
value2="%target_sap"
|
value2="%target_ChaScore3"
|
||||||
range2="UI:CONST:127"
|
range2="UI:CONST:127"
|
||||||
color3="%sta_color"
|
color3="%ChaScore2_color"
|
||||||
value3="%target_sta"
|
value3="%target_ChaScore2"
|
||||||
range3="UI:CONST:127" />
|
range3="UI:CONST:127" />
|
||||||
<ctrl type="tooltip"
|
<ctrl type="tooltip"
|
||||||
id="tt1"
|
id="tt1"
|
||||||
tooltip="uiStamina"
|
tooltip="uiChaScore2"
|
||||||
color="%sta_color"
|
color="%ChaScore2_color"
|
||||||
posparent="jauges"
|
posparent="jauges"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
x="0"
|
x="0"
|
||||||
|
@ -116,8 +116,8 @@
|
||||||
h="0" />
|
h="0" />
|
||||||
<ctrl type="tooltip"
|
<ctrl type="tooltip"
|
||||||
id="tt2"
|
id="tt2"
|
||||||
tooltip="uiSap"
|
tooltip="uiChaScore3"
|
||||||
color="%sap_color"
|
color="%ChaScore3_color"
|
||||||
posparent="tt1"
|
posparent="tt1"
|
||||||
posref="BL BL"
|
posref="BL BL"
|
||||||
x="0"
|
x="0"
|
||||||
|
@ -127,8 +127,8 @@
|
||||||
h="0" />
|
h="0" />
|
||||||
<ctrl type="tooltip"
|
<ctrl type="tooltip"
|
||||||
id="tt3"
|
id="tt3"
|
||||||
tooltip="uiFocus"
|
tooltip="uiChaScore4"
|
||||||
color="%focus_color"
|
color="%ChaScore4_color"
|
||||||
posparent="tt2"
|
posparent="tt2"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
x="0"
|
x="0"
|
||||||
|
@ -361,22 +361,22 @@
|
||||||
posref="TL TL">
|
posref="TL TL">
|
||||||
<!-- new Jauges -->
|
<!-- new Jauges -->
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="b_life"
|
id="b_ChaScore1"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
x="0"
|
x="0"
|
||||||
y="-2"
|
y="-2"
|
||||||
texture="slot_jauge.tga"
|
texture="slot_jauge.tga"
|
||||||
inherit_gc_alpha="false" />
|
inherit_gc_alpha="false" />
|
||||||
<instance template="jauge_score_target"
|
<instance template="jauge_score_target"
|
||||||
id="jlife"
|
id="jChaScore1"
|
||||||
posparent="b_life"
|
posparent="b_ChaScore1"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
color="214 56 7 255"
|
color="214 56 7 255"
|
||||||
text="uiHP"
|
text="uiChaScore1"
|
||||||
val="%target_hp" />
|
val="%target_ChaScore1" />
|
||||||
<instance template="text_tt"
|
<instance template="text_tt"
|
||||||
posparent="jlife"
|
posparent="jChaScore1"
|
||||||
tooltip="uittTargetHp"
|
tooltip="uittTargetChaScore1"
|
||||||
tooltip_parent="win" />
|
tooltip_parent="win" />
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
|
@ -1485,15 +1485,15 @@
|
||||||
posref="MR MR"
|
posref="MR MR"
|
||||||
mini="true"
|
mini="true"
|
||||||
x="-16"
|
x="-16"
|
||||||
color1="%sta_color"
|
color1="%ChaScore2_color"
|
||||||
value1="UI:VARIABLES:BARS:TEAM:#team_mate_index:STA"
|
value1="UI:VARIABLES:BARS:TEAM:#team_mate_index:ChaScore2"
|
||||||
range1="UI:CONST:127"
|
range1="UI:CONST:127"
|
||||||
color2="%sap_color"
|
color2="%ChaScore3_color"
|
||||||
value2="UI:VARIABLES:BARS:TEAM:#team_mate_index:SAP"
|
value2="UI:VARIABLES:BARS:TEAM:#team_mate_index:ChaScore3"
|
||||||
range2="UI:CONST:127"
|
range2="UI:CONST:127"
|
||||||
color3="%hp_color"
|
color3="%ChaScore1_color"
|
||||||
color3_negative="%hp_color_neg"
|
color3_negative="%ChaScore1_color_neg"
|
||||||
value3="UI:VARIABLES:BARS:TEAM:#team_mate_index:HP"
|
value3="UI:VARIABLES:BARS:TEAM:#team_mate_index:ChaScore1"
|
||||||
range3="UI:CONST:127" />
|
range3="UI:CONST:127" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="lead"
|
id="lead"
|
||||||
|
@ -1578,9 +1578,9 @@
|
||||||
<!--
|
<!--
|
||||||
<group id="header_opened" x="0" y="0" w="160" child_resize_h="true" child_resize_hmargin="4" posref="TL TL" >
|
<group id="header_opened" x="0" y="0" w="160" child_resize_h="true" child_resize_hmargin="4" posref="TL TL" >
|
||||||
<view type="bar3" id="jauges" posref="TR TR" y="-2" mini="true" x="-16"
|
<view type="bar3" id="jauges" posref="TR TR" y="-2" mini="true" x="-16"
|
||||||
color1="%sta_color" value1="UI:VARIABLES:BARS:TEAM:#team_mate_index:STA" range1="UI:CONST:127"
|
color1="%ChaScore2_color" value1="UI:VARIABLES:BARS:TEAM:#team_mate_index:ChaScore2" range1="UI:CONST:127"
|
||||||
color2="%sap_color" value2="UI:VARIABLES:BARS:TEAM:#team_mate_index:SAP" range2="UI:CONST:127"
|
color2="%ChaScore3_color" value2="UI:VARIABLES:BARS:TEAM:#team_mate_index:ChaScore3" range2="UI:CONST:127"
|
||||||
color3="%hp_color" color3_negative="%hp_color_neg" value3="UI:VARIABLES:BARS:TEAM:#team_mate_index:HP" range3="UI:CONST:127" />
|
color3="%ChaScore1_color" color3_negative="%ChaScore1_color_neg" value3="UI:VARIABLES:BARS:TEAM:#team_mate_index:ChaScore1" range3="UI:CONST:127" />
|
||||||
<view type="bitmap" id="lead" posparent="jauges" posref="ML MR" x="-4" y="1" texture="w_leader.tga" global_color="false" />
|
<view type="bitmap" id="lead" posparent="jauges" posref="ML MR" x="-4" y="1" texture="w_leader.tga" global_color="false" />
|
||||||
<view type="bitmap" id="successor" posparent="jauges" posref="ML MR" x="-4" y="1" texture="w_leader.tga" global_color="false" color="255 255 255 128" active="false"/>
|
<view type="bitmap" id="successor" posparent="jauges" posref="ML MR" x="-4" y="1" texture="w_leader.tga" global_color="false" color="255 255 255 128" active="false"/>
|
||||||
|
|
||||||
|
|
|
@ -1051,15 +1051,15 @@ This MUST follow the Enum MISSION_DESC::TIconId
|
||||||
<!-- ***************************** -->
|
<!-- ***************************** -->
|
||||||
<!-- * COMMON DEFINE COLORS * -->
|
<!-- * COMMON DEFINE COLORS * -->
|
||||||
<!-- ***************************** -->
|
<!-- ***************************** -->
|
||||||
<define id="hp_color"
|
<define id="ChaScore1_color"
|
||||||
value="255 64 0 255" />
|
value="255 64 0 255" />
|
||||||
<define id="hp_color_neg"
|
<define id="ChaScore1_color_neg"
|
||||||
value="127 32 0 255" />
|
value="127 32 0 255" />
|
||||||
<define id="sta_color"
|
<define id="ChaScore2_color"
|
||||||
value="255 0 255 255" />
|
value="255 0 255 255" />
|
||||||
<define id="sap_color"
|
<define id="ChaScore3_color"
|
||||||
value="72 255 0 255" />
|
value="72 255 0 255" />
|
||||||
<define id="focus_color"
|
<define id="ChaScore4_color"
|
||||||
value="0 128 255 255" />
|
value="0 128 255 255" />
|
||||||
<define id="bulk_color"
|
<define id="bulk_color"
|
||||||
value="215 185 75 255" />
|
value="215 185 75 255" />
|
||||||
|
|
|
@ -227,15 +227,15 @@
|
||||||
<!-- ***************************** -->
|
<!-- ***************************** -->
|
||||||
<!-- * COMMON DEFINE COLORS * -->
|
<!-- * COMMON DEFINE COLORS * -->
|
||||||
<!-- ***************************** -->
|
<!-- ***************************** -->
|
||||||
<define id="hp_color"
|
<define id="ChaScore1_color"
|
||||||
value="255 64 0 255" />
|
value="255 64 0 255" />
|
||||||
<define id="hp_color_neg"
|
<define id="ChaScore1_color_neg"
|
||||||
value="127 32 0 255" />
|
value="127 32 0 255" />
|
||||||
<define id="sta_color"
|
<define id="ChaScore2_color"
|
||||||
value="255 0 255 255" />
|
value="255 0 255 255" />
|
||||||
<define id="sap_color"
|
<define id="ChaScore3_color"
|
||||||
value="72 255 0 255" />
|
value="72 255 0 255" />
|
||||||
<define id="focus_color"
|
<define id="ChaScore4_color"
|
||||||
value="0 128 255 255" />
|
value="0 128 255 255" />
|
||||||
<define id="bulk_color"
|
<define id="bulk_color"
|
||||||
value="215 185 75 255" />
|
value="215 185 75 255" />
|
||||||
|
|
|
@ -7,14 +7,14 @@
|
||||||
<variable entry="UI:TEMP:POINTS" type="sint64" value="0" />
|
<variable entry="UI:TEMP:POINTS" type="sint64" value="0" />
|
||||||
<variable entry="UI:TEMP:CAREERBACKHOME" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CAREERBACKHOME" type="sint64" value="-1"/>
|
||||||
|
|
||||||
<variable entry="UI:TEMP:CARACS:HPMAX" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CARACS:ChaScore1MAX" type="sint64" value="-1"/>
|
||||||
<variable entry="UI:TEMP:CARACS:HPREG" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CARACS:ChaScore1REG" type="sint64" value="-1"/>
|
||||||
<variable entry="UI:TEMP:CARACS:STAMAX" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CARACS:ChaScore2MAX" type="sint64" value="-1"/>
|
||||||
<variable entry="UI:TEMP:CARACS:STAREG" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CARACS:ChaScore2REG" type="sint64" value="-1"/>
|
||||||
<variable entry="UI:TEMP:CARACS:SAPMAX" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CARACS:ChaScore3MAX" type="sint64" value="-1"/>
|
||||||
<variable entry="UI:TEMP:CARACS:SAPREG" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CARACS:ChaScore3REG" type="sint64" value="-1"/>
|
||||||
<variable entry="UI:TEMP:CARACS:WISHMAX" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CARACS:ChaScore4MAX" type="sint64" value="-1"/>
|
||||||
<variable entry="UI:TEMP:CARACS:WISHREG" type="sint64" value="-1"/>
|
<variable entry="UI:TEMP:CARACS:ChaScore4REG" type="sint64" value="-1"/>
|
||||||
|
|
||||||
<variable entry="UI:TEMP:CHAR3D:CAREER" type="sint64" value="0"/>
|
<variable entry="UI:TEMP:CHAR3D:CAREER" type="sint64" value="0"/>
|
||||||
|
|
||||||
|
@ -26,47 +26,47 @@
|
||||||
<!-- BASE CARACS PART -->
|
<!-- BASE CARACS PART -->
|
||||||
|
|
||||||
<proc id="proc_set_base_caracs_fy">
|
<proc id="proc_set_base_caracs_fy">
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:HPMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:HPREG|value=35" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=35" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:STAMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:STAREG|value=35" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=35" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:SAPMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:SAPREG|value=20" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=20" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:WISHMAX|value=20" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=20" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:WISHREG|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=30" />
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
<proc id="proc_set_base_caracs_ma">
|
<proc id="proc_set_base_caracs_ma">
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:HPMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:HPREG|value=20" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=20" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:STAMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:STAREG|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:SAPMAX|value=20" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=20" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:SAPREG|value=35" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=35" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:WISHMAX|value=35" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=35" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:WISHREG|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=30" />
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
<proc id="proc_set_base_caracs_tr">
|
<proc id="proc_set_base_caracs_tr">
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:HPMAX|value=20" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=20" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:HPREG|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:STAMAX|value=35" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=35" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:STAREG|value=20" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=20" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:SAPMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:SAPREG|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:WISHMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:WISHREG|value=35" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=35" />
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
<proc id="proc_set_base_caracs_zo">
|
<proc id="proc_set_base_caracs_zo">
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:HPMAX|value=20" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=20" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:HPREG|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:STAMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:STAREG|value=35" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=35" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:SAPMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:SAPREG|value=35" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=35" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:WISHMAX|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=30" />
|
||||||
<action handler="set" params="dblink=UI:TEMP:CARACS:WISHREG|value=30" />
|
<action handler="set" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=30" />
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
<!-- ADD CARACS PART -->
|
<!-- ADD CARACS PART -->
|
||||||
|
@ -74,136 +74,136 @@
|
||||||
<proc id="proc_set_add_caracs_fy">
|
<proc id="proc_set_add_caracs_fy">
|
||||||
|
|
||||||
<!--Fighter-->
|
<!--Fighter-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
<!--Magician-->
|
<!--Magician-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
<!--Craftsman-->
|
<!--Craftsman-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
<proc id="proc_set_add_caracs_ma">
|
<proc id="proc_set_add_caracs_ma">
|
||||||
|
|
||||||
<!--Fighter-->
|
<!--Fighter-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
<!--Magician-->
|
<!--Magician-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
<!--Craftsman-->
|
<!--Craftsman-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
<proc id="proc_set_add_caracs_tr">
|
<proc id="proc_set_add_caracs_tr">
|
||||||
|
|
||||||
<!--Fighter-->
|
<!--Fighter-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
<!--Magician-->
|
<!--Magician-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
<!--Craftsman-->
|
<!--Craftsman-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
<proc id="proc_set_add_caracs_zo">
|
<proc id="proc_set_add_caracs_zo">
|
||||||
|
|
||||||
<!--Fighter-->
|
<!--Fighter-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,1)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
<!--Magician-->
|
<!--Magician-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,2)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
<!--Craftsman-->
|
<!--Craftsman-->
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:HPMAX|value=add(@@UI:TEMP:CARACS:HPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore1MAX|value=add(@@UI:TEMP:CARACS:ChaScore1MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:HPREG|value=add(@@UI:TEMP:CARACS:HPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore1REG|value=add(@@UI:TEMP:CARACS:ChaScore1REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:STAMAX|value=add(@@UI:TEMP:CARACS:STAMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore2MAX|value=add(@@UI:TEMP:CARACS:ChaScore2MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:STAREG|value=add(@@UI:TEMP:CARACS:STAREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore2REG|value=add(@@UI:TEMP:CARACS:ChaScore2REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:SAPMAX|value=add(@@UI:TEMP:CARACS:SAPMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore3MAX|value=add(@@UI:TEMP:CARACS:ChaScore3MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:SAPREG|value=add(@@UI:TEMP:CARACS:SAPREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore3REG|value=add(@@UI:TEMP:CARACS:ChaScore3REG,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:WISHMAX|value=add(@@UI:TEMP:CARACS:WISHMAX,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore4MAX|value=add(@@UI:TEMP:CARACS:ChaScore4MAX,5)" />
|
||||||
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:WISHREG|value=add(@@UI:TEMP:CARACS:WISHREG,5)" />
|
<action handler="set" cond="eq(@UI:TEMP:CAREERCLICKJOB,3)" params="dblink=UI:TEMP:CARACS:ChaScore4REG|value=add(@@UI:TEMP:CARACS:ChaScore4REG,5)" />
|
||||||
|
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
|
@ -1156,20 +1156,20 @@
|
||||||
<view type="bitmap" id="bgtable" posref="TL TL" x="0" y="0" texture="blank.tga" color="45 57 38 128" scale="true" sizeref="wh" global_color="false" render_layer="-2" />
|
<view type="bitmap" id="bgtable" posref="TL TL" x="0" y="0" texture="blank.tga" color="45 57 38 128" scale="true" sizeref="wh" global_color="false" render_layer="-2" />
|
||||||
<instance template="window_border" id="bordure" posref="MM MM" />
|
<instance template="window_border" id="bordure" posref="MM MM" />
|
||||||
|
|
||||||
<instance template="caracs_reg" id="c_hpreg" posref="TM TM" x="0" y="-8" color="%hp_color" carac="uiCarac_HpReg" value_carac="UI:TEMP:CARACS:HPREG" score="uiHpReg" value_score="div(@UI:TEMP:CARACS:HPREG,10)" />
|
<instance template="caracs_reg" id="c_ChaScore1reg" posref="TM TM" x="0" y="-8" color="%ChaScore1_color" carac="uiCarac_ChaScore1Reg" value_carac="UI:TEMP:CARACS:ChaScore1REG" score="uiChaScore1Reg" value_score="div(@UI:TEMP:CARACS:ChaScore1REG,10)" />
|
||||||
<instance template="caracs_reg" id="c_stareg" posref="BL TL" posparent="c_hpreg" x="0" y="-2" color="%sta_color" carac="uiCarac_StaReg" value_carac="UI:TEMP:CARACS:STAREG" score="uiStaReg" value_score="div(@UI:TEMP:CARACS:STAREG,10)" />
|
<instance template="caracs_reg" id="c_ChaScore2reg" posref="BL TL" posparent="c_ChaScore1reg" x="0" y="-2" color="%ChaScore2_color" carac="uiCarac_ChaScore2Reg" value_carac="UI:TEMP:CARACS:ChaScore2REG" score="uiChaScore2Reg" value_score="div(@UI:TEMP:CARACS:ChaScore2REG,10)" />
|
||||||
<instance template="caracs_reg" id="c_sapreg" posref="BL TL" posparent="c_stareg" x="0" y="-2" color="%sap_color" carac="uiCarac_SapReg" value_carac="UI:TEMP:CARACS:SAPREG" score="uiSapReg" value_score="div(@UI:TEMP:CARACS:SAPREG,10)" />
|
<instance template="caracs_reg" id="c_ChaScore3reg" posref="BL TL" posparent="c_ChaScore2reg" x="0" y="-2" color="%ChaScore3_color" carac="uiCarac_ChaScore3Reg" value_carac="UI:TEMP:CARACS:ChaScore3REG" score="uiChaScore3Reg" value_score="div(@UI:TEMP:CARACS:ChaScore3REG,10)" />
|
||||||
<instance template="caracs_reg" id="c_wishreg" posref="BL TL" posparent="c_sapreg" x="0" y="-2" color="%focus_color" carac="uiCarac_WishReg" value_carac="UI:TEMP:CARACS:WISHREG" score="uiWishReg" value_score="div(@UI:TEMP:CARACS:WISHREG,10)" />
|
<instance template="caracs_reg" id="c_ChaScore4reg" posref="BL TL" posparent="c_ChaScore3reg" x="0" y="-2" color="%ChaScore4_color" carac="uiCarac_ChaScore4Reg" value_carac="UI:TEMP:CARACS:ChaScore4REG" score="uiChaScore4Reg" value_score="div(@UI:TEMP:CARACS:ChaScore4REG,10)" />
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<group id="table1" posparent="table2" posref="TR BR" w="306" h="117" x="0" y="24" active="false" >
|
<group id="table1" posparent="table2" posref="TR BR" w="306" h="117" x="0" y="24" active="false" >
|
||||||
<view type="bitmap" id="bgtable" posref="TL TL" x="0" y="0" texture="blank.tga" color="45 57 38 128" scale="true" sizeref="wh" global_color="false" render_layer="-2" />
|
<view type="bitmap" id="bgtable" posref="TL TL" x="0" y="0" texture="blank.tga" color="45 57 38 128" scale="true" sizeref="wh" global_color="false" render_layer="-2" />
|
||||||
<instance template="window_border" id="bordure" posref="MM MM" />
|
<instance template="window_border" id="bordure" posref="MM MM" />
|
||||||
|
|
||||||
<instance template="caracs_max" id="c_hpmax" posref="TM TM" x="0" y="-8" color="%hp_color" carac="uiCarac_HpMax" value_carac="UI:TEMP:CARACS:HPMAX" score="uiHpMax" value_score="mul(@UI:TEMP:CARACS:HPMAX,10)" />
|
<instance template="caracs_max" id="c_ChaScore1max" posref="TM TM" x="0" y="-8" color="%ChaScore1_color" carac="uiCarac_ChaScore1Max" value_carac="UI:TEMP:CARACS:ChaScore1MAX" score="uiChaScore1Max" value_score="mul(@UI:TEMP:CARACS:ChaScore1MAX,10)" />
|
||||||
<instance template="caracs_max" id="c_stamax" posref="BL TL" posparent="c_hpmax" x="0" y="-2" color="%sta_color" carac="uiCarac_StaMax" value_carac="UI:TEMP:CARACS:STAMAX" score="uiStaMax" value_score="mul(@UI:TEMP:CARACS:STAMAX,10)" />
|
<instance template="caracs_max" id="c_ChaScore2max" posref="BL TL" posparent="c_ChaScore1max" x="0" y="-2" color="%ChaScore2_color" carac="uiCarac_ChaScore2Max" value_carac="UI:TEMP:CARACS:ChaScore2MAX" score="uiChaScore2Max" value_score="mul(@UI:TEMP:CARACS:ChaScore2MAX,10)" />
|
||||||
<instance template="caracs_max" id="c_sapmax" posref="BL TL" posparent="c_stamax" x="0" y="-2" color="%sap_color" carac="uiCarac_SapMax" value_carac="UI:TEMP:CARACS:SAPMAX" score="uiSapMax" value_score="mul(@UI:TEMP:CARACS:SAPMAX,10)" />
|
<instance template="caracs_max" id="c_ChaScore3max" posref="BL TL" posparent="c_ChaScore2max" x="0" y="-2" color="%ChaScore3_color" carac="uiCarac_ChaScore3Max" value_carac="UI:TEMP:CARACS:ChaScore3MAX" score="uiChaScore3Max" value_score="mul(@UI:TEMP:CARACS:ChaScore3MAX,10)" />
|
||||||
<instance template="caracs_max" id="c_wishmax" posref="BL TL" posparent="c_sapmax" x="0" y="-2" color="%focus_color" carac="uiCarac_WishMax" value_carac="UI:TEMP:CARACS:WISHMAX" score="uiWishMax" value_score="mul(@UI:TEMP:CARACS:WISHMAX,10)" />
|
<instance template="caracs_max" id="c_ChaScore4max" posref="BL TL" posparent="c_ChaScore3max" x="0" y="-2" color="%ChaScore4_color" carac="uiCarac_ChaScore4Max" value_carac="UI:TEMP:CARACS:ChaScore4MAX" score="uiChaScore4Max" value_score="mul(@UI:TEMP:CARACS:ChaScore4MAX,10)" />
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
<view type="text" id="table2_txt" posparent="table2" posref="TL BL" x="0" y="2" hardtext="uiScoreRegen" fontsize="16" color="255 255 255 255" render_layer="-1" />
|
<view type="text" id="table2_txt" posparent="table2" posref="TL BL" x="0" y="2" hardtext="uiScoreRegen" fontsize="16" color="255 255 255 255" render_layer="-1" />
|
||||||
|
@ -1810,4 +1810,4 @@
|
||||||
</anim>
|
</anim>
|
||||||
|
|
||||||
|
|
||||||
</interface_config>
|
</interface_config>
|
||||||
|
|
|
@ -221,15 +221,15 @@
|
||||||
<!-- ***************************** -->
|
<!-- ***************************** -->
|
||||||
<!-- * COMMON DEFINE COLORS * -->
|
<!-- * COMMON DEFINE COLORS * -->
|
||||||
<!-- ***************************** -->
|
<!-- ***************************** -->
|
||||||
<define id="hp_color"
|
<define id="ChaScore1_color"
|
||||||
value="255 64 0 255" />
|
value="255 64 0 255" />
|
||||||
<define id="hp_color_neg"
|
<define id="ChaScore1_color_neg"
|
||||||
value="127 32 0 255" />
|
value="127 32 0 255" />
|
||||||
<define id="sta_color"
|
<define id="ChaScore2_color"
|
||||||
value="255 0 255 255" />
|
value="255 0 255 255" />
|
||||||
<define id="sap_color"
|
<define id="ChaScore3_color"
|
||||||
value="72 255 0 255" />
|
value="72 255 0 255" />
|
||||||
<define id="focus_color"
|
<define id="ChaScore4_color"
|
||||||
value="0 128 255 255" />
|
value="0 128 255 255" />
|
||||||
<define id="bulk_color"
|
<define id="bulk_color"
|
||||||
value="215 185 75 255" />
|
value="215 185 75 255" />
|
||||||
|
|
|
@ -545,10 +545,10 @@
|
||||||
<view type="text" id="max" posref="TR TR" x="-36" y="-4" hardtext="uiSumMax" shadow="true" fontsize="16" color="255 255 255 255" />
|
<view type="text" id="max" posref="TR TR" x="-36" y="-4" hardtext="uiSumMax" shadow="true" fontsize="16" color="255 255 255 255" />
|
||||||
<view type="text" id="reg" posref="TR TR" x="-4" y="-4" hardtext="uiSumReg" shadow="true" fontsize="16" color="255 255 255 255" />
|
<view type="text" id="reg" posref="TR TR" x="-4" y="-4" hardtext="uiSumReg" shadow="true" fontsize="16" color="255 255 255 255" />
|
||||||
|
|
||||||
<instance template="sum_caracs" id="c_hpmax" posref="TL TL" x="4" y="-24" title="uiSumHp" color="%hp_color" max="mul(@UI:TEMP:CARACS:HPMAX,10)" reg="div(@UI:TEMP:CARACS:HPREG,10)" />
|
<instance template="sum_caracs" id="c_ChaScore1max" posref="TL TL" x="4" y="-24" title="uiSumChaScore1" color="%ChaScore1_color" max="mul(@UI:TEMP:CARACS:ChaScore1MAX,10)" reg="div(@UI:TEMP:CARACS:ChaScore1REG,10)" />
|
||||||
<instance template="sum_caracs" id="c_stamax" posref="BL TL" posparent="c_hpmax" x="0" y="-2" title="uiSumSta" color="%sta_color" max="mul(@UI:TEMP:CARACS:STAMAX,10)" reg="div(@UI:TEMP:CARACS:STAREG,10)" />
|
<instance template="sum_caracs" id="c_ChaScore2max" posref="BL TL" posparent="c_ChaScore1max" x="0" y="-2" title="uiSumChaScore2" color="%ChaScore2_color" max="mul(@UI:TEMP:CARACS:ChaScore2MAX,10)" reg="div(@UI:TEMP:CARACS:ChaScore2REG,10)" />
|
||||||
<instance template="sum_caracs" id="c_sapmax" posref="BL TL" posparent="c_stamax" x="0" y="-2" title="uiSumSap" color="%sap_color" max="mul(@UI:TEMP:CARACS:SAPMAX,10)" reg="div(@UI:TEMP:CARACS:SAPREG,10)" />
|
<instance template="sum_caracs" id="c_ChaScore3max" posref="BL TL" posparent="c_ChaScore2max" x="0" y="-2" title="uiSumChaScore3" color="%ChaScore3_color" max="mul(@UI:TEMP:CARACS:ChaScore3MAX,10)" reg="div(@UI:TEMP:CARACS:ChaScore3REG,10)" />
|
||||||
<instance template="sum_caracs" id="c_wishmax" posref="BL TL" posparent="c_sapmax" x="0" y="-2" title="uiSumWish" color="%focus_color" max="mul(@UI:TEMP:CARACS:WISHMAX,10)" reg="div(@UI:TEMP:CARACS:WISHREG,10)" />
|
<instance template="sum_caracs" id="c_ChaScore4max" posref="BL TL" posparent="c_ChaScore3max" x="0" y="-2" title="uiSumChaScore4" color="%ChaScore4_color" max="mul(@UI:TEMP:CARACS:ChaScore4MAX,10)" reg="div(@UI:TEMP:CARACS:ChaScore4REG,10)" />
|
||||||
-->
|
-->
|
||||||
</group>
|
</group>
|
||||||
|
|
||||||
|
@ -920,4 +920,4 @@
|
||||||
|
|
||||||
</anim>
|
</anim>
|
||||||
|
|
||||||
</interface_config>
|
</interface_config>
|
||||||
|
|
|
@ -732,17 +732,17 @@
|
||||||
global_color="false" />
|
global_color="false" />
|
||||||
<link expr="getSPhraseName(@SERVER:EXECUTE_PHRASE:LINK:#index:PHRASE)" target="spell_name:uc_hardtext" />
|
<link expr="getSPhraseName(@SERVER:EXECUTE_PHRASE:LINK:#index:PHRASE)" target="spell_name:uc_hardtext" />
|
||||||
|
|
||||||
<!-- COSTS (HP, SAP, STA) -->
|
<!-- COSTS (ChaScore1, ChaScore3, ChaScore2) -->
|
||||||
<!--
|
<!--
|
||||||
<view type="text" id="costs" posparent="spell" posref="BR BL" x="2" y="0" shadow="true" fontsize="8" hardtext="uiLinksCosts" />
|
<view type="text" id="costs" posparent="spell" posref="BR BL" x="2" y="0" shadow="true" fontsize="8" hardtext="uiLinksCosts" />
|
||||||
-->
|
-->
|
||||||
<instance template="box_widget" id="box_cost" posref="BL BL" w="81" h="13" />
|
<instance template="box_widget" id="box_cost" posref="BL BL" w="81" h="13" />
|
||||||
|
|
||||||
<view type="text_number" id="hp_cost" posparent="box_cost" posref="ML MM" x="14" y="-2" fontsize="8" shadow="true" value="SERVER:EXECUTE_PHRASE:LINK:#index:HP_COST" color="%hp_color" global_color="false" />
|
<view type="text_number" id="ChaScore1_cost" posparent="box_cost" posref="ML MM" x="14" y="-2" fontsize="8" shadow="true" value="SERVER:EXECUTE_PHRASE:LINK:#index:ChaScore1_COST" color="%ChaScore1_color" global_color="false" />
|
||||||
<view type="text" id="sep1" posparent="box_cost" posref="ML MM" x="27" y="-1" shadow="true" fontsize="10" hardtext="/" color="255 255 255 255" />
|
<view type="text" id="sep1" posparent="box_cost" posref="ML MM" x="27" y="-1" shadow="true" fontsize="10" hardtext="/" color="255 255 255 255" />
|
||||||
<view type="text_number" id="sap_cost" posparent="box_cost" posref="MM MM" x="0" y="-2" fontsize="8" shadow="true" value="SERVER:EXECUTE_PHRASE:LINK:#index:SAP_COST" color="%sap_color" global_color="false" />
|
<view type="text_number" id="ChaScore3_cost" posparent="box_cost" posref="MM MM" x="0" y="-2" fontsize="8" shadow="true" value="SERVER:EXECUTE_PHRASE:LINK:#index:ChaScore3_COST" color="%ChaScore3_color" global_color="false" />
|
||||||
<view type="text" id="sep2" posparent="box_cost" posref="ML MM" x="54" y="-1" shadow="true" fontsize="10" hardtext="/" color="255 255 255 255" />
|
<view type="text" id="sep2" posparent="box_cost" posref="ML MM" x="54" y="-1" shadow="true" fontsize="10" hardtext="/" color="255 255 255 255" />
|
||||||
<view type="text_number" id="sta_cost" posparent="box_cost" posref="MR MM" x="-14" y="-2" fontsize="8" shadow="true" value="SERVER:EXECUTE_PHRASE:LINK:#index:STA_COST" color="%sta_color" global_color="false" />
|
<view type="text_number" id="ChaScore2_cost" posparent="box_cost" posref="MR MM" x="-14" y="-2" fontsize="8" shadow="true" value="SERVER:EXECUTE_PHRASE:LINK:#index:ChaScore2_COST" color="%ChaScore2_color" global_color="false" />
|
||||||
</group>
|
</group>
|
||||||
<link expr="eq(@UI:VARIABLES:LINKS_INFOS, 0)" target="name_cost:active" />
|
<link expr="eq(@UI:VARIABLES:LINKS_INFOS, 0)" target="name_cost:active" />
|
||||||
|
|
||||||
|
@ -756,9 +756,9 @@
|
||||||
<view type="text_id" id="name" posref="TL TL" x="0" y="-1" h="10" shadow="true" fontsize="10" textid="SERVER:EXECUTE_PHRASE:LINK:#index:TARGET_NAME" />
|
<view type="text_id" id="name" posref="TL TL" x="0" y="-1" h="10" shadow="true" fontsize="10" textid="SERVER:EXECUTE_PHRASE:LINK:#index:TARGET_NAME" />
|
||||||
<!-- Jauges Target -->
|
<!-- Jauges Target -->
|
||||||
<view type="bar3" id="jauges" posref="BL BL" mini="true" y="1"
|
<view type="bar3" id="jauges" posref="BL BL" mini="true" y="1"
|
||||||
color1="%sta_color" value1="SERVER:EXECUTE_PHRASE:LINK:#index:TARGET_STA" range1="UI:CONST:127"
|
color1="%ChaScore2_color" value1="SERVER:EXECUTE_PHRASE:LINK:#index:TARGET_ChaScore2" range1="UI:CONST:127"
|
||||||
color2="%sap_color" value2="SERVER:EXECUTE_PHRASE:LINK:#index:TARGET_SAP" range2="UI:CONST:127"
|
color2="%ChaScore3_color" value2="SERVER:EXECUTE_PHRASE:LINK:#index:TARGET_ChaScore3" range2="UI:CONST:127"
|
||||||
color3="%hp_color" value3="SERVER:EXECUTE_PHRASE:LINK:#index:TARGET_HP" range3="UI:CONST:127" />
|
color3="%ChaScore1_color" value3="SERVER:EXECUTE_PHRASE:LINK:#index:TARGET_ChaScore1" range3="UI:CONST:127" />
|
||||||
</group>
|
</group>
|
||||||
<link expr="ifthenelse(eq(@UI:VARIABLES:LINKS_INFOS, 0), 154, 40)" target="target:x" />
|
<link expr="ifthenelse(eq(@UI:VARIABLES:LINKS_INFOS, 0), 154, 40)" target="target:x" />
|
||||||
|
|
||||||
|
|
|
@ -44,60 +44,60 @@ end
|
||||||
|
|
||||||
|
|
||||||
------------------------------------------------------------------------------------------------------------
|
------------------------------------------------------------------------------------------------------------
|
||||||
-- Update player bars in function of what we wants to display (we can hide each one of the 3 bars : sap,stamina and focus)
|
-- Update player bars in function of what we wants to display (we can hide each one of the 3 bars : ChaScore3,ChaScore2 and ChaScore4)
|
||||||
function game:updatePlayerBars()
|
function game:updatePlayerBars()
|
||||||
|
|
||||||
local dispSap = getDbProp('UI:SAVE:PLAYER:DISP_SAP');
|
local dispChaScore3 = getDbProp('UI:SAVE:PLAYER:DISP_ChaScore3');
|
||||||
local dispSta = getDbProp('UI:SAVE:PLAYER:DISP_STA');
|
local dispChaScore2 = getDbProp('UI:SAVE:PLAYER:DISP_ChaScore2');
|
||||||
local dispFoc = getDbProp('UI:SAVE:PLAYER:DISP_FOC');
|
local dispChaScore4 = getDbProp('UI:SAVE:PLAYER:DISP_ChaScore4');
|
||||||
|
|
||||||
local ui = getUI('ui:interface:player:content');
|
local ui = getUI('ui:interface:player:content');
|
||||||
|
|
||||||
-- active ui in function of what is displayed
|
-- active ui in function of what is displayed
|
||||||
|
|
||||||
ui.b_sap.active = (dispSap == 1);
|
ui.b_ChaScore3.active = (dispChaScore3 == 1);
|
||||||
ui.jsap.active = (dispSap == 1);
|
ui.jChaScore3.active = (dispChaScore3 == 1);
|
||||||
|
|
||||||
ui.b_sta.active = (dispSta == 1);
|
ui.b_ChaScore2.active = (dispChaScore2 == 1);
|
||||||
ui.jsta.active = (dispSta == 1);
|
ui.jChaScore2.active = (dispChaScore2 == 1);
|
||||||
|
|
||||||
ui.b_foc.active = (dispFoc == 1);
|
ui.b_ChaScore4.active = (dispChaScore4 == 1);
|
||||||
ui.jfoc.active = (dispFoc == 1);
|
ui.jChaScore4.active = (dispChaScore4 == 1);
|
||||||
|
|
||||||
-- choose good y-position
|
-- choose good y-position
|
||||||
|
|
||||||
local totalBarDisp = dispSap + dispSta + dispFoc;
|
local totalBarDisp = dispChaScore3 + dispChaScore2 + dispChaScore4;
|
||||||
if (totalBarDisp == 3) then
|
if (totalBarDisp == 3) then
|
||||||
|
|
||||||
ui.b_sap.y = -20;
|
ui.b_ChaScore3.y = -20;
|
||||||
ui.b_sta.y = -35;
|
ui.b_ChaScore2.y = -35;
|
||||||
ui.b_foc.y = -50;
|
ui.b_ChaScore4.y = -50;
|
||||||
ui.current_action.y = -65;
|
ui.current_action.y = -65;
|
||||||
|
|
||||||
elseif (totalBarDisp == 2) then
|
elseif (totalBarDisp == 2) then
|
||||||
|
|
||||||
if (dispSap == 0) then
|
if (dispChaScore3 == 0) then
|
||||||
ui.b_sta.y = -20;
|
ui.b_ChaScore2.y = -20;
|
||||||
ui.b_foc.y = -35;
|
ui.b_ChaScore4.y = -35;
|
||||||
end
|
end
|
||||||
|
|
||||||
if (dispSta == 0) then
|
if (dispCha == 0) then
|
||||||
ui.b_sap.y = -20;
|
ui.b_ChaScore3.y = -20;
|
||||||
ui.b_foc.y = -35;
|
ui.b_ChaScore4.y = -35;
|
||||||
end
|
end
|
||||||
|
|
||||||
if (dispFoc == 0) then
|
if (dispChaScore4 == 0) then
|
||||||
ui.b_sap.y = -20;
|
ui.b_ChaScore3.y = -20;
|
||||||
ui.b_sta.y = -35;
|
ui.b_ChaScore2.y = -35;
|
||||||
end
|
end
|
||||||
|
|
||||||
ui.current_action.y = -50;
|
ui.current_action.y = -50;
|
||||||
|
|
||||||
elseif (totalBarDisp == 1) then
|
elseif (totalBarDisp == 1) then
|
||||||
|
|
||||||
ui.b_sta.y = -20;
|
ui.b_ChaScore2.y = -20;
|
||||||
ui.b_foc.y = -20;
|
ui.b_ChaScore4.y = -20;
|
||||||
ui.b_sta.y = -20;
|
ui.b_ChaScore2.y = -20;
|
||||||
|
|
||||||
ui.current_action.y = -35;
|
ui.current_action.y = -35;
|
||||||
|
|
||||||
|
@ -864,10 +864,10 @@ function game:updatePhraseTooltip(phrase)
|
||||||
text = concatUCString(text, "@{CCCF}")
|
text = concatUCString(text, "@{CCCF}")
|
||||||
end
|
end
|
||||||
-- IMPORTANT : the following getters on 'phrase' take in account the 'total action malus' for the timebeing
|
-- IMPORTANT : the following getters on 'phrase' take in account the 'total action malus' for the timebeing
|
||||||
self:setPhraseTooltipCarac(ttWin, "hp_cost", phrase:getHpCost())
|
self:setPhraseTooltipCarac(ttWin, "ChaScore1_cost", phrase:getChaScore1Cost())
|
||||||
self:setPhraseTooltipCarac(ttWin, "sta_cost", phrase:getStaCost())
|
self:setPhraseTooltipCarac(ttWin, "ChaScore2_cost", phrase:getChaScore2Cost())
|
||||||
self:setPhraseTooltipCarac(ttWin, "sap_cost", phrase:getSapCost())
|
self:setPhraseTooltipCarac(ttWin, "ChaScore3_cost", phrase:getChaScore3Cost())
|
||||||
self:setPhraseTooltipCarac(ttWin, "focus_cost", phrase:getFocusCost())
|
self:setPhraseTooltipCarac(ttWin, "ChaScore4_cost", phrase:getChaScore4Cost())
|
||||||
self:setPhraseTooltipCarac(ttWin, "cast_time", phrase:getCastTime(), concatUCString(string.format("%.1f", phrase:getCastTime()), i18n.get("uittSeconds")))
|
self:setPhraseTooltipCarac(ttWin, "cast_time", phrase:getCastTime(), concatUCString(string.format("%.1f", phrase:getCastTime()), i18n.get("uittSeconds")))
|
||||||
local castRange = phrase:getCastRange()
|
local castRange = phrase:getCastRange()
|
||||||
if not phrase:isMagicPhrase() then
|
if not phrase:isMagicPhrase() then
|
||||||
|
@ -935,10 +935,10 @@ function game:updateBuffItemTooltip(buffItem)
|
||||||
local ttWin = getUI("ui:interface:buff_item_context_help")
|
local ttWin = getUI("ui:interface:buff_item_context_help")
|
||||||
local text = buffItem:getName()
|
local text = buffItem:getName()
|
||||||
|
|
||||||
self:setPhraseTooltipCarac(ttWin, "hp_buff", buffItem:getHpBuff())
|
self:setPhraseTooltipCarac(ttWin, "ChaScore1_buff", buffItem:getChaScore1Buff())
|
||||||
self:setPhraseTooltipCarac(ttWin, "sta_buff", buffItem:getStaBuff())
|
self:setPhraseTooltipCarac(ttWin, "ChaScore2_buff", buffItem:getChaScore2Buff())
|
||||||
self:setPhraseTooltipCarac(ttWin, "sap_buff", buffItem:getSapBuff())
|
self:setPhraseTooltipCarac(ttWin, "ChaScore3_buff", buffItem:getChaScore3Buff())
|
||||||
self:setPhraseTooltipCarac(ttWin, "focus_buff", buffItem:getFocusBuff())
|
self:setPhraseTooltipCarac(ttWin, "ChaScore4_buff", buffItem:getChaScore4Buff())
|
||||||
|
|
||||||
updateTooltipCoords()
|
updateTooltipCoords()
|
||||||
return text
|
return text
|
||||||
|
|
|
@ -40,19 +40,19 @@
|
||||||
posref="#posref"
|
posref="#posref"
|
||||||
x="#x"
|
x="#x"
|
||||||
y="#y"
|
y="#y"
|
||||||
color1="%focus_color"
|
color1="%ChaScore4_color"
|
||||||
value1="%player_focus_percent"
|
value1="%player_ChaScore4_percent"
|
||||||
range1="%player_percent_max"
|
range1="%player_percent_max"
|
||||||
color2="%sap_color"
|
color2="%ChaScore3_color"
|
||||||
value2="%player_sap_percent"
|
value2="%player_ChaScore3_percent"
|
||||||
range2="%player_percent_max"
|
range2="%player_percent_max"
|
||||||
color3="%sta_color"
|
color3="%ChaScore2_color"
|
||||||
value3="%player_sta_percent"
|
value3="%player_ChaScore2_percent"
|
||||||
range3="%player_percent_max" />
|
range3="%player_percent_max" />
|
||||||
<ctrl type="tooltip"
|
<ctrl type="tooltip"
|
||||||
id="tt1"
|
id="tt1"
|
||||||
on_tooltip="player_tt_stamina"
|
on_tooltip="player_tt_cha_score2"
|
||||||
color="%sta_color"
|
color="%ChaScore2_color"
|
||||||
posparent="jauges"
|
posparent="jauges"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
x="0"
|
x="0"
|
||||||
|
@ -62,8 +62,8 @@
|
||||||
h="0" />
|
h="0" />
|
||||||
<ctrl type="tooltip"
|
<ctrl type="tooltip"
|
||||||
id="tt2"
|
id="tt2"
|
||||||
on_tooltip="player_tt_sap"
|
on_tooltip="player_tt_cha_score3"
|
||||||
color="%sap_color"
|
color="%ChaScore3_color"
|
||||||
posparent="tt1"
|
posparent="tt1"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
x="0"
|
x="0"
|
||||||
|
@ -73,8 +73,8 @@
|
||||||
h="0" />
|
h="0" />
|
||||||
<ctrl type="tooltip"
|
<ctrl type="tooltip"
|
||||||
id="tt3"
|
id="tt3"
|
||||||
on_tooltip="player_tt_focus"
|
on_tooltip="player_tt_cha_score4"
|
||||||
color="%focus_color"
|
color="%ChaScore4_color"
|
||||||
posparent="tt2"
|
posparent="tt2"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
x="0"
|
x="0"
|
||||||
|
@ -196,20 +196,20 @@
|
||||||
<group type="menu"
|
<group type="menu"
|
||||||
id="player_jauge_menu"
|
id="player_jauge_menu"
|
||||||
extends="base_menu_with_color">
|
extends="base_menu_with_color">
|
||||||
<action id="sap_bardisplay"
|
<action id="ChaScore3_bardisplay"
|
||||||
name="uiSapBarDisplay"
|
name="uiChaScore3BarDisplay"
|
||||||
handler="set"
|
handler="set"
|
||||||
params="dblink=UI:SAVE:PLAYER:DISP_SAP|value=not(@UI:SAVE:PLAYER:DISP_SAP)" />
|
params="dblink=UI:SAVE:PLAYER:DISP_ChaScore3|value=not(@UI:SAVE:PLAYER:DISP_ChaScore3)" />
|
||||||
<action id="sta_bardisplay"
|
<action id="ChaScore2_bardisplay"
|
||||||
name="uiStaBarDisplay"
|
name="uiChaScore2BarDisplay"
|
||||||
handler="set"
|
handler="set"
|
||||||
params="dblink=UI:SAVE:PLAYER:DISP_STA|value=not(@UI:SAVE:PLAYER:DISP_STA)" />
|
params="dblink=UI:SAVE:PLAYER:DISP_ChaScore2|value=not(@UI:SAVE:PLAYER:DISP_ChaScore2)" />
|
||||||
<action id="foc_bardisplay"
|
<action id="ChaScore4_bardisplay"
|
||||||
name="uiFocBarDisplay"
|
name="uiChaScore4BarDisplay"
|
||||||
handler="set"
|
handler="set"
|
||||||
params="dblink=UI:SAVE:PLAYER:DISP_FOC|value=not(@UI:SAVE:PLAYER:DISP_FOC)" />
|
params="dblink=UI:SAVE:PLAYER:DISP_ChaScore4|value=not(@UI:SAVE:PLAYER:DISP_ChaScore4)" />
|
||||||
</group>
|
</group>
|
||||||
<link expr="depends(@UI:SAVE:PLAYER:DISP_SAP, @UI:SAVE:PLAYER:DISP_STA, @UI:SAVE:PLAYER:DISP_FOC)"
|
<link expr="depends(@UI:SAVE:PLAYER:DISP_ChaScore3, @UI:SAVE:PLAYER:DISP_ChaScore2, @UI:SAVE:PLAYER:DISP_ChaScore4)"
|
||||||
action="lua"
|
action="lua"
|
||||||
params="game:updatePlayerBars()" />
|
params="game:updatePlayerBars()" />
|
||||||
<link expr="depends(@SERVER:CHARACTER_INFO:PVP_FACTION_TAG)"
|
<link expr="depends(@SERVER:CHARACTER_INFO:PVP_FACTION_TAG)"
|
||||||
|
@ -549,72 +549,72 @@
|
||||||
group_onclick_l="self_target">
|
group_onclick_l="self_target">
|
||||||
<!-- new Jauges -->
|
<!-- new Jauges -->
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="b_lif"
|
id="b_ChaScore1"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
texture="slot_jauge.tga"
|
texture="slot_jauge.tga"
|
||||||
inherit_gc_alpha="false" />
|
inherit_gc_alpha="false" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="b_sap"
|
id="b_ChaScore3"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
y="-20"
|
y="-20"
|
||||||
texture="slot_jauge.tga"
|
texture="slot_jauge.tga"
|
||||||
inherit_gc_alpha="false" />
|
inherit_gc_alpha="false" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="b_sta"
|
id="b_ChaScore2"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
y="-35"
|
y="-35"
|
||||||
texture="slot_jauge.tga"
|
texture="slot_jauge.tga"
|
||||||
inherit_gc_alpha="false" />
|
inherit_gc_alpha="false" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="b_foc"
|
id="b_ChaScore4"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
y="-50"
|
y="-50"
|
||||||
texture="slot_jauge.tga"
|
texture="slot_jauge.tga"
|
||||||
inherit_gc_alpha="false" />
|
inherit_gc_alpha="false" />
|
||||||
<instance template="jauge_score"
|
<instance template="jauge_score"
|
||||||
id="jlife"
|
id="jChaScore1"
|
||||||
posparent="b_lif"
|
posparent="b_ChaScore1"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
color="214 56 7 255"
|
color="214 56 7 255"
|
||||||
color_gray="160 42 5 255"
|
color_gray="160 42 5 255"
|
||||||
text="uiHP"
|
text="uiChaScore1"
|
||||||
val="%player_hp"
|
val="%player_ChaScore1"
|
||||||
maxval="%player_hp_max"
|
maxval="%player_ChaScore1_max"
|
||||||
val_bar="%player_hp_percent"
|
val_bar="%player_ChaScore1_percent"
|
||||||
tooltip="uittGaugesHP" />
|
tooltip="uittGaugesChaScore1" />
|
||||||
<instance template="jauge_score"
|
<instance template="jauge_score"
|
||||||
id="jsap"
|
id="jChaScore3"
|
||||||
posparent="b_sap"
|
posparent="b_ChaScore3"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
color="133 189 5 255"
|
color="133 189 5 255"
|
||||||
color_gray="100 141 3 255"
|
color_gray="100 141 3 255"
|
||||||
text="uiSap"
|
text="uiChaScore3"
|
||||||
val="%player_sap"
|
val="%player_ChaScore3"
|
||||||
maxval="%player_sap_max"
|
maxval="%player_ChaScore3_max"
|
||||||
val_bar="%player_sap_percent"
|
val_bar="%player_ChaScore3_percent"
|
||||||
tooltip="uittGaugesSap" />
|
tooltip="uittGaugesChaScore3" />
|
||||||
<instance template="jauge_score"
|
<instance template="jauge_score"
|
||||||
id="jsta"
|
id="jChaScore2"
|
||||||
posparent="b_sta"
|
posparent="b_ChaScore2"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
color="202 67 152 255"
|
color="202 67 152 255"
|
||||||
color_gray="151 50 114 255"
|
color_gray="151 50 114 255"
|
||||||
text="uiStamina"
|
text="uiChaScore2"
|
||||||
val="%player_sta"
|
val="%player_ChaScore2"
|
||||||
maxval="%player_sta_max"
|
maxval="%player_ChaScore2_max"
|
||||||
val_bar="%player_sta_percent"
|
val_bar="%player_ChaScore2_percent"
|
||||||
tooltip="uittGaugesSta" />
|
tooltip="uittGaugesChaScore2" />
|
||||||
<instance template="jauge_score"
|
<instance template="jauge_score"
|
||||||
id="jfoc"
|
id="jChaScore4"
|
||||||
posparent="b_foc"
|
posparent="b_ChaScore4"
|
||||||
posref="TL TL"
|
posref="TL TL"
|
||||||
color="31 155 197 255"
|
color="31 155 197 255"
|
||||||
color_gray="23 116 147 255"
|
color_gray="23 116 147 255"
|
||||||
text="uiFocus"
|
text="uiChaScore4"
|
||||||
val="%player_focus"
|
val="%player_ChaScore4"
|
||||||
maxval="%player_focus_max"
|
maxval="%player_ChaScore4_max"
|
||||||
val_bar="%player_focus_percent"
|
val_bar="%player_ChaScore4_percent"
|
||||||
tooltip="uittGaugesFoc" />
|
tooltip="uittGaugesChaScore4" />
|
||||||
<!-- Action Progression (display only if user wants to). Important to set active by default, to have correct reset.xml behaviour -->
|
<!-- Action Progression (display only if user wants to). Important to set active by default, to have correct reset.xml behaviour -->
|
||||||
<instance template="t_current_action_bar"
|
<instance template="t_current_action_bar"
|
||||||
id="current_action"
|
id="current_action"
|
||||||
|
@ -1125,8 +1125,8 @@
|
||||||
color2="255 255 255 255"
|
color2="255 255 255 255"
|
||||||
value2="#beast_db_entry:HUNGER"
|
value2="#beast_db_entry:HUNGER"
|
||||||
range2="31"
|
range2="31"
|
||||||
color3="%hp_color"
|
color3="%ChaScore1_color"
|
||||||
value3="#bars_entry:HP"
|
value3="#bars_entry:ChaScore1"
|
||||||
range3="127" />
|
range3="127" />
|
||||||
<ctrl type="tooltip"
|
<ctrl type="tooltip"
|
||||||
id="tt"
|
id="tt"
|
||||||
|
|
|
@ -91,11 +91,7 @@
|
||||||
<action handler="set" params="target='ui:interface:gestion_windows:x'|value=div(sub(getprop('ui:interface:w'),getprop('ui:interface:gestion_windows:w')),2)" />
|
<action handler="set" params="target='ui:interface:gestion_windows:x'|value=div(sub(getprop('ui:interface:w'),getprop('ui:interface:gestion_windows:w')),2)" />
|
||||||
<action handler="set" params="target='ui:interface:gestion_windows:y'|value=add(getprop('ui:interface:gestion_windows:h'),div(sub(getprop('ui:interface:h'),getprop('ui:interface:gestion_windows:h')),2))" />
|
<action handler="set" params="target='ui:interface:gestion_windows:y'|value=add(getprop('ui:interface:gestion_windows:h'),div(sub(getprop('ui:interface:h'),getprop('ui:interface:gestion_windows:h')),2))" />
|
||||||
<action handler="set" params="target='ui:interface:gestion_windows:active'|value=@UI:TEMP:ACTIVE" />
|
<action handler="set" params="target='ui:interface:gestion_windows:active'|value=@UI:TEMP:ACTIVE" />
|
||||||
|
|
||||||
<!-- AppZone -->
|
|
||||||
<action handler="set" params="target='ui:interface:appzone:active'|value=1" />
|
|
||||||
<action handler="set" params="target='ui:interface:appzone:x'|value=div(sub(getprop('ui:interface:w'),getprop('ui:interface:appzone:w')),2)" />
|
|
||||||
<action handler="set" params="target='ui:interface:appzone:y'|value=add(getprop('ui:interface:appzone:h'),2)" />
|
|
||||||
</proc>
|
</proc>
|
||||||
|
|
||||||
<proc id="proc_reset_interface">
|
<proc id="proc_reset_interface">
|
||||||
|
@ -162,10 +158,10 @@
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:NAME|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:NAME|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:TITLE|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:TITLE|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:GUILD_NAME|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:GUILD_NAME|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:HP|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:ChaScore1|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:STA|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:ChaScore2|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:SAP|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:ChaScore3|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:FOCUS|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:ChaScore4|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:ACTION|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:ACTION|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:MESSAGES|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:MESSAGES|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:PVP_LOGO|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:USER:PVP_LOGO|value=1" />
|
||||||
|
@ -173,10 +169,10 @@
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:NAME|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:NAME|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:TITLE|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:TITLE|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:GUILD_NAME|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:GUILD_NAME|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:HP|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:ChaScore1|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:STA|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:ChaScore2|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:SAP|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:ChaScore3|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:FOCUS|value=0" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:ChaScore4|value=0" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:MESSAGES|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:MESSAGES|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:PVP_LOGO|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:PVP_LOGO|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:NPCNAME|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:FRIEND:NPCNAME|value=1" />
|
||||||
|
@ -187,7 +183,7 @@
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:NAME|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:NAME|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:TITLE|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:TITLE|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:GUILD_NAME|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:GUILD_NAME|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:HP|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:ChaScore1|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:MESSAGES|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:MESSAGES|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:PVP_LOGO|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:INSCENE:ENEMY:PVP_LOGO|value=1" />
|
||||||
|
|
||||||
|
@ -237,9 +233,9 @@
|
||||||
<action handler="set" params="dblink=UI:SAVE:NIGHT_COLOR|value=makeRGB(127,190,254)" />
|
<action handler="set" params="dblink=UI:SAVE:NIGHT_COLOR|value=makeRGB(127,190,254)" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:SHOW_3D_ITEM_PREVIEW|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:SHOW_3D_ITEM_PREVIEW|value=1" />
|
||||||
|
|
||||||
<action handler="set" params="dblink=UI:SAVE:PLAYER:DISP_SAP|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:PLAYER:DISP_ChaScore3|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:PLAYER:DISP_STA|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:PLAYER:DISP_ChaScore2|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:PLAYER:DISP_FOC|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:PLAYER:DISP_ChaScore4|value=1" />
|
||||||
<action handler="set" params="dblink=UI:SAVE:ACT_BAR_OUT|value=1" />
|
<action handler="set" params="dblink=UI:SAVE:ACT_BAR_OUT|value=1" />
|
||||||
|
|
||||||
<action handler="set" params="dblink=UI:SAVE:CHAT:FONT_SIZE|value=10" />
|
<action handler="set" params="dblink=UI:SAVE:CHAT:FONT_SIZE|value=10" />
|
||||||
|
|
|
@ -3897,39 +3897,39 @@
|
||||||
active="false"
|
active="false"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="hp_cost"
|
id="ChaScore1_cost"
|
||||||
texture="ico_heal.tga"
|
texture="ico_heal.tga"
|
||||||
global_color="false"
|
global_color="false"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="success_rate" />
|
posparent="success_rate" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="sta_cost"
|
id="ChaScore2_cost"
|
||||||
y="0"
|
y="0"
|
||||||
texture="ico_stamina.tga"
|
texture="ico_ChaScore2.tga"
|
||||||
global_color="false"
|
global_color="false"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="hp_cost" />
|
posparent="ChaScore1_cost" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="sap_cost"
|
id="ChaScore3_cost"
|
||||||
y="0"
|
y="0"
|
||||||
texture="ico_sap.tga"
|
texture="ico_ChaScore3.tga"
|
||||||
global_color="false"
|
global_color="false"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="sta_cost" />
|
posparent="ChaScore2_cost" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="focus_cost"
|
id="ChaScore4_cost"
|
||||||
y="0"
|
y="0"
|
||||||
texture="ico_focus.tga"
|
texture="ico_ChaScore4.tga"
|
||||||
global_color="false"
|
global_color="false"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="sap_cost" />
|
posparent="ChaScore3_cost" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="cast_time"
|
id="cast_time"
|
||||||
y="0"
|
y="0"
|
||||||
texture="ico_time.tga"
|
texture="ico_time.tga"
|
||||||
global_color="false"
|
global_color="false"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="focus_cost" />
|
posparent="ChaScore4_cost" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="cast_range"
|
id="cast_range"
|
||||||
y="0"
|
y="0"
|
||||||
|
@ -3938,26 +3938,26 @@
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="cast_time" />
|
posparent="cast_time" />
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="hp_cost_text"
|
id="ChaScore1_cost_text"
|
||||||
posparent="hp_cost"
|
posparent="ChaScore1_cost"
|
||||||
posref="MR ML"
|
posref="MR ML"
|
||||||
hardtext="0"
|
hardtext="0"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="sta_cost_text"
|
id="ChaScore2_cost_text"
|
||||||
posparent="sta_cost"
|
posparent="ChaScore2_cost"
|
||||||
posref="MR ML"
|
posref="MR ML"
|
||||||
hardtext="0"
|
hardtext="0"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="sap_cost_text"
|
id="ChaScore3_cost_text"
|
||||||
posparent="sap_cost"
|
posparent="ChaScore3_cost"
|
||||||
posref="MR ML"
|
posref="MR ML"
|
||||||
hardtext="0"
|
hardtext="0"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="focus_cost_text"
|
id="ChaScore4_cost_text"
|
||||||
posparent="focus_cost"
|
posparent="ChaScore4_cost"
|
||||||
posref="MR ML"
|
posref="MR ML"
|
||||||
hardtext="0"
|
hardtext="0"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
|
@ -4104,7 +4104,7 @@
|
||||||
line_maxw="300"
|
line_maxw="300"
|
||||||
multi_line_maxw_only="true" />
|
multi_line_maxw_only="true" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="hp_buff"
|
id="ChaScore1_buff"
|
||||||
h="15"
|
h="15"
|
||||||
y="0"
|
y="0"
|
||||||
texture="ico_heal.tga"
|
texture="ico_heal.tga"
|
||||||
|
@ -4113,47 +4113,47 @@
|
||||||
posparent="text"
|
posparent="text"
|
||||||
active="true"/>
|
active="true"/>
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="sta_buff"
|
id="ChaScore2_buff"
|
||||||
y="0"
|
y="0"
|
||||||
texture="ico_stamina.tga"
|
texture="ico_ChaScore2.tga"
|
||||||
global_color="false"
|
global_color="false"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="hp_buff" />
|
posparent="ChaScore1_buff" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="sap_buff"
|
id="ChaScore3_buff"
|
||||||
y="0"
|
y="0"
|
||||||
texture="ico_sap.tga"
|
texture="ico_ChaScore3.tga"
|
||||||
global_color="false"
|
global_color="false"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="sta_buff" />
|
posparent="ChaScore2_buff" />
|
||||||
<view type="bitmap"
|
<view type="bitmap"
|
||||||
id="focus_buff"
|
id="ChaScore4_buff"
|
||||||
y="0"
|
y="0"
|
||||||
texture="ico_focus.tga"
|
texture="ico_ChaScore4.tga"
|
||||||
global_color="false"
|
global_color="false"
|
||||||
posref="BL TL"
|
posref="BL TL"
|
||||||
posparent="sap_buff" />
|
posparent="ChaScore3_buff" />
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="hp_buff_text"
|
id="ChaScore1_buff_text"
|
||||||
posparent="hp_buff"
|
posparent="ChaScore1_buff"
|
||||||
posref="MR ML"
|
posref="MR ML"
|
||||||
hardtext="0"
|
hardtext="0"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="sta_buff_text"
|
id="ChaScore2_buff_text"
|
||||||
posparent="sta_buff"
|
posparent="ChaScore2_buff"
|
||||||
posref="MR ML"
|
posref="MR ML"
|
||||||
hardtext="0"
|
hardtext="0"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="sap_buff_text"
|
id="ChaScore3_buff_text"
|
||||||
posparent="sap_buff"
|
posparent="ChaScore3_buff"
|
||||||
posref="MR ML"
|
posref="MR ML"
|
||||||
hardtext="0"
|
hardtext="0"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
<view type="text"
|
<view type="text"
|
||||||
id="focus_buff_text"
|
id="ChaScore4_buff_text"
|
||||||
posparent="focus_buff"
|
posparent="ChaScore4_buff"
|
||||||
posref="MR ML"
|
posref="MR ML"
|
||||||
hardtext="0"
|
hardtext="0"
|
||||||
global_color="false"/>
|
global_color="false"/>
|
||||||
|
@ -6927,203 +6927,7 @@
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
</template>
|
</template>
|
||||||
|
<!-- html <hr> element -->
|
||||||
<!-- html browsing context -->
|
|
||||||
<template name="webig_html"
|
|
||||||
keep="true"
|
|
||||||
home=""
|
|
||||||
browse_redo=""
|
|
||||||
browse_undo=""
|
|
||||||
browse_refresh="">
|
|
||||||
<group id="html"
|
|
||||||
type="webig_html"
|
|
||||||
posref="TL TL"
|
|
||||||
home="#home"
|
|
||||||
title_prefix=""
|
|
||||||
sizeref="wh"
|
|
||||||
x="0"
|
|
||||||
y="0"
|
|
||||||
w="0"
|
|
||||||
h="0"
|
|
||||||
background_color="0 0 0 255"
|
|
||||||
error_color="255 240 48 255"
|
|
||||||
link_color="240 155 100 255"
|
|
||||||
text_color="210 210 210 255"
|
|
||||||
h1_color="255 255 255 255"
|
|
||||||
h2_color="255 255 255 255"
|
|
||||||
h3_color="255 255 255 255"
|
|
||||||
h4_color="255 255 255 255"
|
|
||||||
h5_color="255 255 255 255"
|
|
||||||
h6_color="255 255 255 255"
|
|
||||||
text_font_size="10"
|
|
||||||
h1_font_size="20"
|
|
||||||
h2_font_size="18"
|
|
||||||
h3_font_size="16"
|
|
||||||
h4_font_size="14"
|
|
||||||
h5_font_size="12"
|
|
||||||
h6_font_size="12"
|
|
||||||
paragraph_begin_space="12"
|
|
||||||
multi_line_space_factor="0.25"
|
|
||||||
td_begin_space="0"
|
|
||||||
li_begin_space="4"
|
|
||||||
ul_begin_space="12"
|
|
||||||
li_indent="-10"
|
|
||||||
ul_indent="30"
|
|
||||||
checkbox_bitmap_normal="w_slot_on.tga"
|
|
||||||
checkbox_bitmap_pushed="w_opacity_on.tga"
|
|
||||||
checkbox_bitmap_over=""
|
|
||||||
background_bitmap_view="background_bitmap"
|
|
||||||
browse_next_time="false"
|
|
||||||
form_text_area_group="edit_box_widget_multiline"
|
|
||||||
browse_refresh="#browse_refresh"
|
|
||||||
browse_undo="#browse_undo"
|
|
||||||
browse_redo="#browse_redo"
|
|
||||||
timeout="10">
|
|
||||||
<group id="black"
|
|
||||||
posref="BR BR"
|
|
||||||
sizeref="hw"
|
|
||||||
w="-10"
|
|
||||||
h="-12"
|
|
||||||
inherit_gc_alpha="true" />
|
|
||||||
<instance template="inner_thin_border"
|
|
||||||
posparent="black"
|
|
||||||
inherit_gc_alpha="true " />
|
|
||||||
<view id="background_bitmap"
|
|
||||||
type="bitmap"
|
|
||||||
posparent="black"
|
|
||||||
posref="MM MM"
|
|
||||||
sizeref="wh"
|
|
||||||
w="-2"
|
|
||||||
h="-2"
|
|
||||||
inherit_gc_alpha="true"
|
|
||||||
scale="true"
|
|
||||||
texture="blank.tga"
|
|
||||||
global_color="false" />
|
|
||||||
<group id="text_list"
|
|
||||||
type="list"
|
|
||||||
fontsize="9"
|
|
||||||
posref="TL TL"
|
|
||||||
posparent="black"
|
|
||||||
x="2"
|
|
||||||
y="-2"
|
|
||||||
space="0"
|
|
||||||
sizeref="hw"
|
|
||||||
w="-4"
|
|
||||||
h="-4"
|
|
||||||
maxelements="2000" />
|
|
||||||
<ctrl id="scroll_bar"
|
|
||||||
style="skin_scroll" />
|
|
||||||
</group>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<!-- html browser window -->
|
|
||||||
<template name="webig_browser"
|
|
||||||
keep="true"
|
|
||||||
home=""
|
|
||||||
w="480"
|
|
||||||
h="400"
|
|
||||||
browse_redo=""
|
|
||||||
browse_undo=""
|
|
||||||
browse_refresh="">
|
|
||||||
<group id="browser"
|
|
||||||
type="container"
|
|
||||||
w="#w"
|
|
||||||
h="#h"
|
|
||||||
x="0"
|
|
||||||
y="0"
|
|
||||||
pop_max_w="2000"
|
|
||||||
pop_max_h="2000"
|
|
||||||
pop_min_w="64"
|
|
||||||
pop_min_h="32"
|
|
||||||
header_color="UI:SAVE:WIN:COLORS:COM"
|
|
||||||
posref="TL TL"
|
|
||||||
title=""
|
|
||||||
global_color="true"
|
|
||||||
global_color_over="true"
|
|
||||||
right_button="true"
|
|
||||||
movable="true"
|
|
||||||
lockable="true"
|
|
||||||
active="true"
|
|
||||||
openable="true"
|
|
||||||
opened="true"
|
|
||||||
resizer="true"
|
|
||||||
on_active="lua"
|
|
||||||
on_active_params="WebBrowser:onActive()">
|
|
||||||
<group id="header_closed"
|
|
||||||
w="64"
|
|
||||||
h="16"
|
|
||||||
posref="TL TL"
|
|
||||||
on_active="lua"
|
|
||||||
on_active_params="WebBrowser:onClickHeaderClose()" />
|
|
||||||
<group id="header_opened"
|
|
||||||
h="16"
|
|
||||||
w="480"
|
|
||||||
posref="TL TL"
|
|
||||||
on_active="lua"
|
|
||||||
on_active_params="WebBrowser:onClickHeaderOpen()">
|
|
||||||
<ctrl style="text_button_header"
|
|
||||||
id="browse_redo"
|
|
||||||
button_type="push_button"
|
|
||||||
posref="MR MR"
|
|
||||||
x="-16"
|
|
||||||
y="0"
|
|
||||||
hardtext="uiBrowseRedoButton"
|
|
||||||
tooltip="uittBrowseRedo"
|
|
||||||
onclick_l="lua"
|
|
||||||
params_l="WebBrowser:onClickRedo()"
|
|
||||||
frozen="true" />
|
|
||||||
<ctrl style="text_button_header"
|
|
||||||
id="browse_undo"
|
|
||||||
button_type="push_button"
|
|
||||||
posparent="browse_redo"
|
|
||||||
posref="ML MR"
|
|
||||||
x="-4"
|
|
||||||
y="0"
|
|
||||||
hardtext="uiBrowseUndoButton"
|
|
||||||
tooltip="uittBrowseUndo"
|
|
||||||
onclick_l="lua"
|
|
||||||
params_l="WebBrowser:onClickUndo()"
|
|
||||||
frozen="true" />
|
|
||||||
<ctrl style="text_button_header"
|
|
||||||
id="browse_refresh"
|
|
||||||
button_type="push_button"
|
|
||||||
posparent="browse_undo"
|
|
||||||
posref="ML MR"
|
|
||||||
x="-4"
|
|
||||||
y="0"
|
|
||||||
hardtext="uiBrowseRefresh"
|
|
||||||
tooltip="uittBrowseRefresh"
|
|
||||||
onclick_l="lua"
|
|
||||||
params_l="WebBrowser:onClickRefresh()"
|
|
||||||
frozen="true" />
|
|
||||||
<ctrl style="text_button_header"
|
|
||||||
id="browse_home"
|
|
||||||
button_type="push_button"
|
|
||||||
posparent="browse_refresh"
|
|
||||||
posref="ML MR"
|
|
||||||
x="-4"
|
|
||||||
y="0"
|
|
||||||
hardtext="uiBrowseHome"
|
|
||||||
tooltip="uittBrowseHome"
|
|
||||||
onclick_l="lua"
|
|
||||||
params_l="WebBrowser:onClickHome()" />
|
|
||||||
</group>
|
|
||||||
|
|
||||||
<group id="content"
|
|
||||||
x="0"
|
|
||||||
y="0"
|
|
||||||
w="0"
|
|
||||||
h="0"
|
|
||||||
posref="TL TL">
|
|
||||||
<instance template="webig_html"
|
|
||||||
home="#home"
|
|
||||||
browse_redo="#browse_redo"
|
|
||||||
browse_undo="#browse_undo"
|
|
||||||
browse_refresh="#browse_refresh" />
|
|
||||||
</group>
|
|
||||||
</group>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<!-- html <hr> element -->
|
<!-- html <hr> element -->
|
||||||
<template name="html_hr"
|
<template name="html_hr"
|
||||||
keep="true">
|
keep="true">
|
||||||
|
@ -7146,24 +6950,4 @@
|
||||||
global_color="false" />
|
global_color="false" />
|
||||||
</group>
|
</group>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template name="html_form_select_box_menu_widget"
|
|
||||||
keep="true"
|
|
||||||
id="sb">
|
|
||||||
<group type="menu"
|
|
||||||
id="#id"
|
|
||||||
posref="BL TL"
|
|
||||||
x="0"
|
|
||||||
y="0"
|
|
||||||
mouse_pos="false"
|
|
||||||
space="2"
|
|
||||||
shadow="false"
|
|
||||||
color="255 255 255 128"
|
|
||||||
color_over="255 255 255 255"
|
|
||||||
color_grayed="0 0 0 255"
|
|
||||||
fontsize="12"
|
|
||||||
highlight_over="255 255 255 128"
|
|
||||||
force_inside_screen="false"></group>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
</interface_config>
|
</interface_config>
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
db SERVER:PACK_ANIMAL:NbBeast 3
|
db SERVER:PACK_ANIMAL:NbBeast 3
|
||||||
db SERVER:PACK_ANIMAL:BEAST:0:HP 32
|
db SERVER:PACK_ANIMAL:BEAST:0:ChaScore1 32
|
||||||
db SERVER:PACK_ANIMAL:BEAST:0:SAP 32
|
db SERVER:PACK_ANIMAL:BEAST:0:ChaScore3 32
|
||||||
db SERVER:PACK_ANIMAL:BEAST:0:STA 32
|
db SERVER:PACK_ANIMAL:BEAST:0:ChaScore2 32
|
||||||
db SERVER:PACK_ANIMAL:BEAST:1:HP 64
|
db SERVER:PACK_ANIMAL:BEAST:1:ChaScore1 64
|
||||||
db SERVER:PACK_ANIMAL:BEAST:1:SAP 64
|
db SERVER:PACK_ANIMAL:BEAST:1:ChaScore3 64
|
||||||
db SERVER:PACK_ANIMAL:BEAST:1:STA 64
|
db SERVER:PACK_ANIMAL:BEAST:1:ChaScore2 64
|
||||||
db SERVER:PACK_ANIMAL:BEAST:2:HP 128
|
db SERVER:PACK_ANIMAL:BEAST:2:ChaScore1 128
|
||||||
db SERVER:PACK_ANIMAL:BEAST:2:SAP 128
|
db SERVER:PACK_ANIMAL:BEAST:2:ChaScore3 128
|
||||||
db SERVER:PACK_ANIMAL:BEAST:2:STA 128
|
db SERVER:PACK_ANIMAL:BEAST:2:ChaScore2 128
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
db SERVER:PACK_ANIMAL:STEED:Present 1
|
db SERVER:PACK_ANIMAL:STEED:Present 1
|
||||||
db SERVER:PACK_ANIMAL:STEED:HP 32
|
db SERVER:PACK_ANIMAL:STEED:ChaScore1 32
|
||||||
db SERVER:PACK_ANIMAL:STEED:SAP 32
|
db SERVER:PACK_ANIMAL:STEED:ChaScore3 32
|
||||||
db SERVER:PACK_ANIMAL:STEED:STA 32
|
db SERVER:PACK_ANIMAL:STEED:ChaScore2 32
|
|
@ -1,18 +1,18 @@
|
||||||
db SERVER:GROUP:0:PRESENT 1
|
db SERVER:GROUP:0:PRESENT 1
|
||||||
db SERVER:GROUP:0:NAME 0
|
db SERVER:GROUP:0:NAME 0
|
||||||
db SERVER:GROUP:0:STA 32
|
db SERVER:GROUP:0:ChaScore2 32
|
||||||
db SERVER:GROUP:0:SAP 32
|
db SERVER:GROUP:0:ChaScore3 32
|
||||||
db SERVER:GROUP:0:HP -32
|
db SERVER:GROUP:0:ChaScore1 -32
|
||||||
db SERVER:GROUP:1:PRESENT 1
|
db SERVER:GROUP:1:PRESENT 1
|
||||||
db SERVER:GROUP:1:NAME 1
|
db SERVER:GROUP:1:NAME 1
|
||||||
db SERVER:GROUP:1:STA 64
|
db SERVER:GROUP:1:ChaScore2 64
|
||||||
db SERVER:GROUP:1:SAP 64
|
db SERVER:GROUP:1:ChaScore3 64
|
||||||
db SERVER:GROUP:1:HP 64
|
db SERVER:GROUP:1:ChaScore1 64
|
||||||
db SERVER:GROUP:2:PRESENT 1
|
db SERVER:GROUP:2:PRESENT 1
|
||||||
db SERVER:GROUP:2:NAME 2
|
db SERVER:GROUP:2:NAME 2
|
||||||
db SERVER:GROUP:2:STA 127
|
db SERVER:GROUP:2:ChaScore2 127
|
||||||
db SERVER:GROUP:2:SAP 127
|
db SERVER:GROUP:2:ChaScore3 127
|
||||||
db SERVER:GROUP:2:HP 127
|
db SERVER:GROUP:2:ChaScore1 127
|
||||||
db SERVER:GROUP:LEADER_INDEX 0
|
db SERVER:GROUP:LEADER_INDEX 0
|
||||||
db SERVER:GROUP:SUCCESSOR_INDEX 1
|
db SERVER:GROUP:SUCCESSOR_INDEX 1
|
||||||
|
|
||||||
|
|
|
@ -1756,12 +1756,12 @@ void CCharacterCL::updateVisualPropertyBars(const NLMISC::TGameCycle &gameCycle,
|
||||||
{
|
{
|
||||||
CBarManager::CBarInfo barInfo;
|
CBarManager::CBarInfo barInfo;
|
||||||
|
|
||||||
// Encode HP to 7 bits
|
// Encode ChaScore1 to 7 bits
|
||||||
barInfo.Score[SCORES::hit_points] = (sint8)((prop&0x7ff) * 127 / 1023);
|
barInfo.Score[SCORES::cha_score1] = (sint8)((prop&0x7ff) * 127 / 1023);
|
||||||
// NB: barInfo are sint8, but no problem, since anything following is 7 bits.
|
// NB: barInfo are sint8, but no problem, since anything following is 7 bits.
|
||||||
barInfo.Score[SCORES::stamina] = (uint8)((prop>>11)&0x7f);
|
barInfo.Score[SCORES::cha_score2] = (uint8)((prop>>11)&0x7f);
|
||||||
barInfo.Score[SCORES::sap] = (uint8)((prop>>18)&0x7f);
|
barInfo.Score[SCORES::cha_score3] = (uint8)((prop>>18)&0x7f);
|
||||||
barInfo.Score[SCORES::focus] = (uint8)((prop>>25)&0x7f);
|
barInfo.Score[SCORES::cha_score4] = (uint8)((prop>>25)&0x7f);
|
||||||
|
|
||||||
// update The Bar manager
|
// update The Bar manager
|
||||||
CBarManager *pBM= CBarManager::getInstance();
|
CBarManager *pBM= CBarManager::getInstance();
|
||||||
|
@ -1769,13 +1769,13 @@ void CCharacterCL::updateVisualPropertyBars(const NLMISC::TGameCycle &gameCycle,
|
||||||
WHY gameCycle+1 ????? (yoyo)
|
WHY gameCycle+1 ????? (yoyo)
|
||||||
It's because sometimes I have a bug With target DB update and VP update. This is the scenario
|
It's because sometimes I have a bug With target DB update and VP update. This is the scenario
|
||||||
where I suppose the problem rises:
|
where I suppose the problem rises:
|
||||||
tick=320: EGS::tickUpdate(): player.DBTargetHP.setProp(49)
|
tick=320: EGS::tickUpdate(): player.DBTargetChaScore1.setProp(49)
|
||||||
tick=321: EGS::combat update, target ennemy receives a Hit, VPHp=10 => transmitted to client with timestamp=321
|
tick=321: EGS::combat update, target ennemy receives a Hit, VPChaScore1=10 => transmitted to client with timestamp=321
|
||||||
EGS::databaseUpdate(), DB updated, with timestamp=321!!!
|
EGS::databaseUpdate(), DB updated, with timestamp=321!!!
|
||||||
|
|
||||||
Thus I receives on client:
|
Thus I receives on client:
|
||||||
first the VP with Hp=10, timestamp=321
|
first the VP with ChaScore1=10, timestamp=321
|
||||||
second the DB with Hp=49, timestamp=321 too => replaced => BUG
|
second the DB with ChaScore1=49, timestamp=321 too => replaced => BUG
|
||||||
NB: DB is typically sent at low frequency by FrontEnd, thus received later on client.
|
NB: DB is typically sent at low frequency by FrontEnd, thus received later on client.
|
||||||
|
|
||||||
Since databaseUpdate() is called every 2 ticks, adding +1 to VP timestamps solve easily the problem.
|
Since databaseUpdate() is called every 2 ticks, adding +1 to VP timestamps solve easily the problem.
|
||||||
|
@ -1785,19 +1785,19 @@ void CCharacterCL::updateVisualPropertyBars(const NLMISC::TGameCycle &gameCycle,
|
||||||
|
|
||||||
NB: moreover, tickupdate() is called every 8 (or 16) ticks, and databaseUpdate() every 2 ticks. So there is one more
|
NB: moreover, tickupdate() is called every 8 (or 16) ticks, and databaseUpdate() every 2 ticks. So there is one more
|
||||||
possible bug:
|
possible bug:
|
||||||
318: EGS::tickUpdate(): player.DBTargetHP.setProp(49)
|
318: EGS::tickUpdate(): player.DBTargetChaScore1.setProp(49)
|
||||||
319: EGS::combat update, target ennemy receives a Hit, VPHp=10 => transmitted to client with timestamp=319
|
319: EGS::combat update, target ennemy receives a Hit, VPChaScore1=10 => transmitted to client with timestamp=319
|
||||||
EGS::databaseUpdate(), BUT decide to send only a small subset of DB (because lot of things to send)
|
EGS::databaseUpdate(), BUT decide to send only a small subset of DB (because lot of things to send)
|
||||||
=> our TargetHP is not updated
|
=> our TargetChaScore1 is not updated
|
||||||
320: nothing. tickupdate() is not called, since every 8 ticks
|
320: nothing. tickupdate() is not called, since every 8 ticks
|
||||||
321: EGS::databaseUpdate(), update TargetHP, with timestamp=321 !!!!! => Bug
|
321: EGS::databaseUpdate(), update TargetChaScore1, with timestamp=321 !!!!! => Bug
|
||||||
|
|
||||||
(remind that we cannot store a timestamp for each DB property, else would be too big to store and to send...)
|
(remind that we cannot store a timestamp for each DB property, else would be too big to store and to send...)
|
||||||
|
|
||||||
BTW, this last bug should be very rare, so don't care.
|
BTW, this last bug should be very rare, so don't care.
|
||||||
*********** */
|
*********** */
|
||||||
pBM->updateBars(dataSetId(), barInfo, gameCycle+1,
|
pBM->updateBars(dataSetId(), barInfo, gameCycle+1,
|
||||||
CBarManager::HpFlag | CBarManager::StaFlag | CBarManager::SapFlag | CBarManager::FocusFlag);
|
CBarManager::ChaScore1Flag | CBarManager::ChaScore2Flag | CBarManager::ChaScore3Flag | CBarManager::ChaScore4Flag);
|
||||||
|
|
||||||
}// updateVisualPropertyBars //
|
}// updateVisualPropertyBars //
|
||||||
|
|
||||||
|
@ -3048,7 +3048,7 @@ KeyChosen:
|
||||||
case CAnimationStateSheet::ElecCastInit:
|
case CAnimationStateSheet::ElecCastInit:
|
||||||
case CAnimationStateSheet::FearCastInit:
|
case CAnimationStateSheet::FearCastInit:
|
||||||
case CAnimationStateSheet::FireCastInit:
|
case CAnimationStateSheet::FireCastInit:
|
||||||
case CAnimationStateSheet::HealHPCastInit:
|
case CAnimationStateSheet::HealChaScore1CastInit:
|
||||||
case CAnimationStateSheet::MadCastInit:
|
case CAnimationStateSheet::MadCastInit:
|
||||||
case CAnimationStateSheet::PoisonCastInit:
|
case CAnimationStateSheet::PoisonCastInit:
|
||||||
case CAnimationStateSheet::RootCastInit:
|
case CAnimationStateSheet::RootCastInit:
|
||||||
|
@ -3068,7 +3068,7 @@ KeyChosen:
|
||||||
case CAnimationStateSheet::ElecCastLoop:
|
case CAnimationStateSheet::ElecCastLoop:
|
||||||
case CAnimationStateSheet::FearCastLoop:
|
case CAnimationStateSheet::FearCastLoop:
|
||||||
case CAnimationStateSheet::FireCastLoop:
|
case CAnimationStateSheet::FireCastLoop:
|
||||||
case CAnimationStateSheet::HealHPCastLoop:
|
case CAnimationStateSheet::HealChaScore1CastLoop:
|
||||||
case CAnimationStateSheet::MadCastLoop:
|
case CAnimationStateSheet::MadCastLoop:
|
||||||
case CAnimationStateSheet::PoisonCastLoop:
|
case CAnimationStateSheet::PoisonCastLoop:
|
||||||
case CAnimationStateSheet::RootCastLoop:
|
case CAnimationStateSheet::RootCastLoop:
|
||||||
|
@ -3088,7 +3088,7 @@ KeyChosen:
|
||||||
case CAnimationStateSheet::ElecCastEnd:
|
case CAnimationStateSheet::ElecCastEnd:
|
||||||
case CAnimationStateSheet::FearCastEnd:
|
case CAnimationStateSheet::FearCastEnd:
|
||||||
case CAnimationStateSheet::FireCastEnd:
|
case CAnimationStateSheet::FireCastEnd:
|
||||||
case CAnimationStateSheet::HealHPCastEnd:
|
case CAnimationStateSheet::HealChaScore1CastEnd:
|
||||||
case CAnimationStateSheet::MadCastEnd:
|
case CAnimationStateSheet::MadCastEnd:
|
||||||
case CAnimationStateSheet::PoisonCastEnd:
|
case CAnimationStateSheet::PoisonCastEnd:
|
||||||
case CAnimationStateSheet::RootCastEnd:
|
case CAnimationStateSheet::RootCastEnd:
|
||||||
|
@ -3111,7 +3111,7 @@ KeyChosen:
|
||||||
case CAnimationStateSheet::ElecCastFail:
|
case CAnimationStateSheet::ElecCastFail:
|
||||||
case CAnimationStateSheet::FearCastFail:
|
case CAnimationStateSheet::FearCastFail:
|
||||||
case CAnimationStateSheet::FireCastFail:
|
case CAnimationStateSheet::FireCastFail:
|
||||||
case CAnimationStateSheet::HealHPCastFail:
|
case CAnimationStateSheet::HealChaScore1CastFail:
|
||||||
case CAnimationStateSheet::MadCastFail:
|
case CAnimationStateSheet::MadCastFail:
|
||||||
case CAnimationStateSheet::PoisonCastFail:
|
case CAnimationStateSheet::PoisonCastFail:
|
||||||
case CAnimationStateSheet::RootCastFail:
|
case CAnimationStateSheet::RootCastFail:
|
||||||
|
@ -3684,8 +3684,8 @@ void CCharacterCL::beginCast(const MBEHAV::CBehaviour &behaviour)
|
||||||
case MBEHAV::CAST_FIRE:
|
case MBEHAV::CAST_FIRE:
|
||||||
setAnim(CAnimationStateSheet::FireCastInit);
|
setAnim(CAnimationStateSheet::FireCastInit);
|
||||||
break;
|
break;
|
||||||
case MBEHAV::CAST_HEALHP:
|
case MBEHAV::CAST_HEALChaScore1:
|
||||||
setAnim(CAnimationStateSheet::HealHPCastInit);
|
setAnim(CAnimationStateSheet::HealChaScore1CastInit);
|
||||||
break;
|
break;
|
||||||
case MBEHAV::CAST_MAD:
|
case MBEHAV::CAST_MAD:
|
||||||
setAnim(CAnimationStateSheet::MadCastInit);
|
setAnim(CAnimationStateSheet::MadCastInit);
|
||||||
|
@ -3743,8 +3743,8 @@ void CCharacterCL::endCast(const MBEHAV::CBehaviour &behaviour, const MBEHAV::CB
|
||||||
case MBEHAV::CAST_FIRE:
|
case MBEHAV::CAST_FIRE:
|
||||||
setAnim(CAnimationStateSheet::FireCastEnd);
|
setAnim(CAnimationStateSheet::FireCastEnd);
|
||||||
break;
|
break;
|
||||||
case MBEHAV::CAST_HEALHP:
|
case MBEHAV::CAST_HEALChaScore1:
|
||||||
setAnim(CAnimationStateSheet::HealHPCastEnd);
|
setAnim(CAnimationStateSheet::HealChaScore1CastEnd);
|
||||||
break;
|
break;
|
||||||
case MBEHAV::CAST_MAD:
|
case MBEHAV::CAST_MAD:
|
||||||
setAnim(CAnimationStateSheet::MadCastEnd);
|
setAnim(CAnimationStateSheet::MadCastEnd);
|
||||||
|
@ -4528,23 +4528,23 @@ bool CCharacterCL::isCurrentBehaviourAttackEnd() const
|
||||||
|
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
void CCharacterCL::applyBehaviourFlyingHPs(const CBehaviourContext &bc, const MBEHAV::CBehaviour &behaviour,
|
void CCharacterCL::applyBehaviourFlyingChaScore1s(const CBehaviourContext &bc, const MBEHAV::CBehaviour &behaviour,
|
||||||
const vector<double> &targetHitDates)
|
const vector<double> &targetHitDates)
|
||||||
{
|
{
|
||||||
nlassert(targetHitDates.size()==bc.Targets.Targets.size());
|
nlassert(targetHitDates.size()==bc.Targets.Targets.size());
|
||||||
|
|
||||||
if(!bc.Targets.Targets.empty())
|
if(!bc.Targets.Targets.empty())
|
||||||
{
|
{
|
||||||
if(behaviour.DeltaHP != 0)
|
if(behaviour.DeltaChaScore1 != 0)
|
||||||
{
|
{
|
||||||
CRGBA deltaHPColor(0, 0, 0);
|
CRGBA deltaChaScore1Color(0, 0, 0);
|
||||||
// if it's a hit
|
// if it's a hit
|
||||||
if( behaviour.DeltaHP < 0 )
|
if( behaviour.DeltaChaScore1 < 0 )
|
||||||
{
|
{
|
||||||
// if the behaviour is casted by the user
|
// if the behaviour is casted by the user
|
||||||
if( slot() == 0 )
|
if( slot() == 0 )
|
||||||
{
|
{
|
||||||
deltaHPColor = ClientCfg.SystemInfoParams["dgm"].Color;
|
deltaChaScore1Color = ClientCfg.SystemInfoParams["dgm"].Color;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
// if the behaviour is casted by an entity that target the user
|
// if the behaviour is casted by an entity that target the user
|
||||||
|
@ -4555,27 +4555,27 @@ void CCharacterCL::applyBehaviourFlyingHPs(const CBehaviourContext &bc, const MB
|
||||||
{
|
{
|
||||||
// if actor is player : use pvp color
|
// if actor is player : use pvp color
|
||||||
if( actor->isPlayer() )
|
if( actor->isPlayer() )
|
||||||
deltaHPColor = ClientCfg.SystemInfoParams["dgp"].Color;
|
deltaChaScore1Color = ClientCfg.SystemInfoParams["dgp"].Color;
|
||||||
else
|
else
|
||||||
deltaHPColor = ClientCfg.SystemInfoParams["dg"].Color;
|
deltaChaScore1Color = ClientCfg.SystemInfoParams["dg"].Color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
deltaHPColor = CRGBA(127,127,127);
|
deltaChaScore1Color = CRGBA(127,127,127);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
deltaHPColor = CRGBA(0,220,0);
|
deltaChaScore1Color = CRGBA(0,220,0);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set the delta HP
|
// Set the delta ChaScore1
|
||||||
for (size_t i=0; i<bc.Targets.Targets.size(); ++i)
|
for (size_t i=0; i<bc.Targets.Targets.size(); ++i)
|
||||||
{
|
{
|
||||||
CEntityCL *target2 = EntitiesMngr.entity(bc.Targets.Targets[i].TargetSlot);
|
CEntityCL *target2 = EntitiesMngr.entity(bc.Targets.Targets[i].TargetSlot);
|
||||||
if(target2)
|
if(target2)
|
||||||
target2->addHPOutput(behaviour.DeltaHP, deltaHPColor, float(targetHitDates[i]-TimeInSec));
|
target2->addChaScore1Output(behaviour.DeltaChaScore1, deltaChaScore1Color, float(targetHitDates[i]-TimeInSec));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4724,7 +4724,7 @@ void CCharacterCL::applyBehaviour(const CBehaviourContext &bc) // virtual
|
||||||
updateCurrentAttack();
|
updateCurrentAttack();
|
||||||
if (isCurrentBehaviourAttackEnd())
|
if (isCurrentBehaviourAttackEnd())
|
||||||
{
|
{
|
||||||
// retrieve target hit dates, so flying HPs have the correct ones
|
// retrieve target hit dates, so flying ChaScore1s have the correct ones
|
||||||
performCurrentAttackEnd(bc, selfSpell && isOffensif, targetHitDates, combatAnimState);
|
performCurrentAttackEnd(bc, selfSpell && isOffensif, targetHitDates, combatAnimState);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4752,7 +4752,7 @@ void CCharacterCL::applyBehaviour(const CBehaviourContext &bc) // virtual
|
||||||
case MBEHAV::CAST_ELEC:
|
case MBEHAV::CAST_ELEC:
|
||||||
case MBEHAV::CAST_FEAR:
|
case MBEHAV::CAST_FEAR:
|
||||||
case MBEHAV::CAST_FIRE:
|
case MBEHAV::CAST_FIRE:
|
||||||
case MBEHAV::CAST_HEALHP:
|
case MBEHAV::CAST_HEALChaScore1:
|
||||||
case MBEHAV::CAST_MAD:
|
case MBEHAV::CAST_MAD:
|
||||||
case MBEHAV::CAST_POISON:
|
case MBEHAV::CAST_POISON:
|
||||||
case MBEHAV::CAST_ROOT:
|
case MBEHAV::CAST_ROOT:
|
||||||
|
@ -4792,8 +4792,8 @@ void CCharacterCL::applyBehaviour(const CBehaviourContext &bc) // virtual
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// DeltaHP
|
// DeltaChaScore1
|
||||||
applyBehaviourFlyingHPs(bc, behaviour, targetHitDates);
|
applyBehaviourFlyingChaScore1s(bc, behaviour, targetHitDates);
|
||||||
}
|
}
|
||||||
// This is a behaviour for the combat.
|
// This is a behaviour for the combat.
|
||||||
else if(behaviour.isCombat() || behaviour.isCreatureAttack())
|
else if(behaviour.isCombat() || behaviour.isCreatureAttack())
|
||||||
|
@ -4838,8 +4838,8 @@ void CCharacterCL::applyBehaviour(const CBehaviourContext &bc) // virtual
|
||||||
UserControls.resetSmoothCameraDeltaYaw();
|
UserControls.resetSmoothCameraDeltaYaw();
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeltaHP
|
// DeltaChaScore1
|
||||||
applyBehaviourFlyingHPs(bc, behaviour, targetHitDates);
|
applyBehaviourFlyingChaScore1s(bc, behaviour, targetHitDates);
|
||||||
}
|
}
|
||||||
// Emote
|
// Emote
|
||||||
else if(behaviour.isEmote())
|
else if(behaviour.isEmote())
|
||||||
|
@ -4901,11 +4901,11 @@ void CCharacterCL::applyBehaviour(const CBehaviourContext &bc) // virtual
|
||||||
break;
|
break;
|
||||||
// Extracting Begin
|
// Extracting Begin
|
||||||
case MBEHAV::EXTRACTING:
|
case MBEHAV::EXTRACTING:
|
||||||
// DeltaHP
|
// DeltaChaScore1
|
||||||
if(target)
|
if(target)
|
||||||
if(behaviour.DeltaHP != 0)
|
if(behaviour.DeltaChaScore1 != 0)
|
||||||
target->addHPOutput(behaviour.DeltaHP,CRGBA(0,220,0));
|
target->addChaScore1Output(behaviour.DeltaChaScore1,CRGBA(0,220,0));
|
||||||
// If receiving a new DeltaHP in the current extraction, don't reset the animation
|
// If receiving a new DeltaChaScore1 in the current extraction, don't reset the animation
|
||||||
if ( previousBehaviour.Behaviour != _CurrentBehaviour.Behaviour )
|
if ( previousBehaviour.Behaviour != _CurrentBehaviour.Behaviour )
|
||||||
setAnim(CAnimationStateSheet::UseInit);
|
setAnim(CAnimationStateSheet::UseInit);
|
||||||
break;
|
break;
|
||||||
|
@ -6069,13 +6069,13 @@ void CCharacterCL::updateVisible (const TTime ¤tTimeInMs, CEntityCL *targe
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update Modifiers
|
// Update Modifiers
|
||||||
if(!_HPModifiers.empty())
|
if(!_ChaScore1Modifiers.empty())
|
||||||
{
|
{
|
||||||
HPMD mod;
|
ChaScore1MD mod;
|
||||||
mod.CHPModifier::operator= (*_HPModifiers.begin());
|
mod.CChaScore1Modifier::operator= (*_ChaScore1Modifiers.begin());
|
||||||
mod.Time = TimeInSec + mod.DeltaT;
|
mod.Time = TimeInSec + mod.DeltaT;
|
||||||
_HPDisplayed.push_back(mod);
|
_ChaScore1Displayed.push_back(mod);
|
||||||
_HPModifiers.erase(_HPModifiers.begin());
|
_ChaScore1Modifiers.erase(_ChaScore1Modifiers.begin());
|
||||||
}
|
}
|
||||||
|
|
||||||
// Parent
|
// Parent
|
||||||
|
@ -6121,8 +6121,8 @@ void CCharacterCL::updateSomeClipped (const TTime ¤tTimeInMs, CEntityCL *t
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove Modifiers.
|
// Remove Modifiers.
|
||||||
_HPModifiers.clear();
|
_ChaScore1Modifiers.clear();
|
||||||
_HPDisplayed.clear();
|
_ChaScore1Displayed.clear();
|
||||||
|
|
||||||
// Parent
|
// Parent
|
||||||
CEntityCL::updateSomeClipped(currentTimeInMs, target);
|
CEntityCL::updateSomeClipped(currentTimeInMs, target);
|
||||||
|
@ -7602,12 +7602,12 @@ void CCharacterCL::drawName(const NLMISC::CMatrix &mat) // virtual
|
||||||
|
|
||||||
//---------------------------------------------------
|
//---------------------------------------------------
|
||||||
// displayModifiers :
|
// displayModifiers :
|
||||||
// Display the Hp Bar
|
// Display the ChaScore1 Bar
|
||||||
//---------------------------------------------------
|
//---------------------------------------------------
|
||||||
void CCharacterCL::displayModifiers() // virtual
|
void CCharacterCL::displayModifiers() // virtual
|
||||||
{
|
{
|
||||||
// if none, no op
|
// if none, no op
|
||||||
if( _HPDisplayed.empty())
|
if( _ChaScore1Displayed.empty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// **** get the name pos
|
// **** get the name pos
|
||||||
|
@ -7631,13 +7631,13 @@ void CCharacterCL::displayModifiers() // virtual
|
||||||
scale = ClientCfg.ConstNameSizeDist / dist;
|
scale = ClientCfg.ConstNameSizeDist / dist;
|
||||||
|
|
||||||
|
|
||||||
// **** Display HP modifiers.
|
// **** Display ChaScore1 modifiers.
|
||||||
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
||||||
std::list<HPMD>::iterator itTmp;
|
std::list<ChaScore1MD>::iterator itTmp;
|
||||||
std::list<HPMD>::iterator it = _HPDisplayed.begin();
|
std::list<ChaScore1MD>::iterator it = _ChaScore1Displayed.begin();
|
||||||
while(it != _HPDisplayed.end())
|
while(it != _ChaScore1Displayed.end())
|
||||||
{
|
{
|
||||||
HPMD &mod = *it;
|
ChaScore1MD &mod = *it;
|
||||||
//
|
//
|
||||||
const float totalDuration= 3.f;
|
const float totalDuration= 3.f;
|
||||||
const float noFadeDuration= 1.f;
|
const float noFadeDuration= 1.f;
|
||||||
|
@ -7646,15 +7646,15 @@ void CCharacterCL::displayModifiers() // virtual
|
||||||
{
|
{
|
||||||
itTmp = it;
|
itTmp = it;
|
||||||
++it;
|
++it;
|
||||||
_HPDisplayed.erase(itTmp);
|
_ChaScore1Displayed.erase(itTmp);
|
||||||
}
|
}
|
||||||
else if (TimeInSec >= mod.Time)
|
else if (TimeInSec >= mod.Time)
|
||||||
{
|
{
|
||||||
ucstring hpModifier;
|
ucstring ChaScore1Modifier;
|
||||||
if (mod.Text.empty())
|
if (mod.Text.empty())
|
||||||
hpModifier = ucstring(toString("%d", mod.Value));
|
ChaScore1Modifier = ucstring(toString("%d", mod.Value));
|
||||||
else
|
else
|
||||||
hpModifier = mod.Text;
|
ChaScore1Modifier = mod.Text;
|
||||||
double t = TimeInSec-mod.Time;
|
double t = TimeInSec-mod.Time;
|
||||||
// for character, keep the deltaZ the first time it is displayed, and apply the same each frame
|
// for character, keep the deltaZ the first time it is displayed, and apply the same each frame
|
||||||
// (avoid Z movement of the flying text because of animation)
|
// (avoid Z movement of the flying text because of animation)
|
||||||
|
@ -7669,11 +7669,11 @@ void CCharacterCL::displayModifiers() // virtual
|
||||||
else
|
else
|
||||||
mod.Color.A= 255-(uint8)((t-noFadeDuration)*255.0/fadeDuration);
|
mod.Color.A= 255-(uint8)((t-noFadeDuration)*255.0/fadeDuration);
|
||||||
|
|
||||||
// Display the hp modifier. display with a X offset according if user or not, for more readability
|
// Display the ChaScore1 modifier. display with a X offset according if user or not, for more readability
|
||||||
sint deltaX= -pIM->FlyingTextManager.getOffsetXForCharacter();
|
sint deltaX= -pIM->FlyingTextManager.getOffsetXForCharacter();
|
||||||
if(UserEntity && UserEntity->slot()==slot())
|
if(UserEntity && UserEntity->slot()==slot())
|
||||||
deltaX*= -1;
|
deltaX*= -1;
|
||||||
pIM->FlyingTextManager.addFlyingText(&mod, hpModifier, pos, mod.Color, scale, deltaX);
|
pIM->FlyingTextManager.addFlyingText(&mod, ChaScore1Modifier, pos, mod.Color, scale, deltaX);
|
||||||
|
|
||||||
// Next
|
// Next
|
||||||
++it;
|
++it;
|
||||||
|
@ -10035,7 +10035,7 @@ NLMISC_COMMAND(attack, "simulate an attack", "<slot> <intensity> <hit_type> <loc
|
||||||
target.Info = dsPower | (dsType << 3);
|
target.Info = dsPower | (dsType << 3);
|
||||||
bc.Targets.Targets.push_back(target);
|
bc.Targets.Targets.push_back(target);
|
||||||
bc.BehavTime = TimeInSec;
|
bc.BehavTime = TimeInSec;
|
||||||
bc.Behav.DeltaHP = -20;
|
bc.Behav.DeltaChaScore1 = -20;
|
||||||
entity->applyBehaviour(bc);
|
entity->applyBehaviour(bc);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -10088,7 +10088,7 @@ NLMISC_COMMAND(rangeAttack, "simulate a range attack", "<slot> [intensity] [loca
|
||||||
if (!target) return false;
|
if (!target) return false;
|
||||||
double dist = (target->pos() - entity->pos()).norm();
|
double dist = (target->pos() - entity->pos()).norm();
|
||||||
bc.Targets.Targets.push_back(CMultiTarget::CTarget(targetSlot, false, (uint8) ceilf((float) (dist / MULTI_TARGET_DISTANCE_UNIT))));
|
bc.Targets.Targets.push_back(CMultiTarget::CTarget(targetSlot, false, (uint8) ceilf((float) (dist / MULTI_TARGET_DISTANCE_UNIT))));
|
||||||
bc.Behav.DeltaHP = -10;
|
bc.Behav.DeltaChaScore1 = -10;
|
||||||
entity->applyBehaviour(bc);
|
entity->applyBehaviour(bc);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -10160,7 +10160,7 @@ NLMISC_COMMAND(creatureAttack, "simulate a creature attack (2 attaques per creat
|
||||||
}
|
}
|
||||||
bc.Behav.CreatureAttack2.HitType = hitType;
|
bc.Behav.CreatureAttack2.HitType = hitType;
|
||||||
bc.BehavTime = TimeInSec;
|
bc.BehavTime = TimeInSec;
|
||||||
bc.Behav.DeltaHP = -15;
|
bc.Behav.DeltaChaScore1 = -15;
|
||||||
caster->applyBehaviour(bc);
|
caster->applyBehaviour(bc);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -161,7 +161,7 @@ public:
|
||||||
|
|
||||||
/// Display the entity name.
|
/// Display the entity name.
|
||||||
virtual void displayName();
|
virtual void displayName();
|
||||||
/// Display the Hp Modifiers
|
/// Display the ChaScore1 Modifiers
|
||||||
virtual void displayModifiers();
|
virtual void displayModifiers();
|
||||||
/// Draw Path
|
/// Draw Path
|
||||||
virtual void drawPath();
|
virtual void drawPath();
|
||||||
|
@ -1062,8 +1062,8 @@ private:
|
||||||
// remove attached fxs that depends on another slot when it has been removed
|
// remove attached fxs that depends on another slot when it has been removed
|
||||||
void updateAttachedFXListForSlotRemoved(std::list<CAttachedFX::TSmartPtr> &fxList, const CLFECOMMON::TCLEntityId &slotRemoved);
|
void updateAttachedFXListForSlotRemoved(std::list<CAttachedFX::TSmartPtr> &fxList, const CLFECOMMON::TCLEntityId &slotRemoved);
|
||||||
|
|
||||||
// apply the flying HP related to behaviour
|
// apply the flying ChaScore1 related to behaviour
|
||||||
void applyBehaviourFlyingHPs(const CBehaviourContext &bc, const MBEHAV::CBehaviour &behaviour, const std::vector<double> &targetHitDates);
|
void applyBehaviourFlyingChaScore1s(const CBehaviourContext &bc, const MBEHAV::CBehaviour &behaviour, const std::vector<double> &targetHitDates);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// retrieve attack from an id and a list of attack lists filenames
|
// retrieve attack from an id and a list of attack lists filenames
|
||||||
|
|
|
@ -158,7 +158,7 @@ public:
|
||||||
ElecCastInit,
|
ElecCastInit,
|
||||||
FearCastInit,
|
FearCastInit,
|
||||||
FireCastInit,
|
FireCastInit,
|
||||||
HealHPCastInit,
|
HealChaScore1CastInit,
|
||||||
MadCastInit,
|
MadCastInit,
|
||||||
PoisonCastInit,
|
PoisonCastInit,
|
||||||
RootCastInit,
|
RootCastInit,
|
||||||
|
@ -174,7 +174,7 @@ public:
|
||||||
ElecCastLoop,
|
ElecCastLoop,
|
||||||
FearCastLoop,
|
FearCastLoop,
|
||||||
FireCastLoop,
|
FireCastLoop,
|
||||||
HealHPCastLoop,
|
HealChaScore1CastLoop,
|
||||||
MadCastLoop,
|
MadCastLoop,
|
||||||
PoisonCastLoop,
|
PoisonCastLoop,
|
||||||
RootCastLoop,
|
RootCastLoop,
|
||||||
|
@ -190,7 +190,7 @@ public:
|
||||||
ElecCastFail,
|
ElecCastFail,
|
||||||
FearCastFail,
|
FearCastFail,
|
||||||
FireCastFail,
|
FireCastFail,
|
||||||
HealHPCastFail,
|
HealChaScore1CastFail,
|
||||||
MadCastFail,
|
MadCastFail,
|
||||||
PoisonCastFail,
|
PoisonCastFail,
|
||||||
RootCastFail,
|
RootCastFail,
|
||||||
|
@ -206,7 +206,7 @@ public:
|
||||||
ElecCastEnd,
|
ElecCastEnd,
|
||||||
FearCastEnd,
|
FearCastEnd,
|
||||||
FireCastEnd,
|
FireCastEnd,
|
||||||
HealHPCastEnd,
|
HealChaScore1CastEnd,
|
||||||
MadCastEnd,
|
MadCastEnd,
|
||||||
PoisonCastEnd,
|
PoisonCastEnd,
|
||||||
RootCastEnd,
|
RootCastEnd,
|
||||||
|
|
|
@ -838,8 +838,8 @@ bool CItemSheet::hasCharacRequirement(uint itemLevel, CHARACTERISTICS::TCharacte
|
||||||
case ITEM_TYPE::MEDIUM_SLEEVES:
|
case ITEM_TYPE::MEDIUM_SLEEVES:
|
||||||
case ITEM_TYPE::MEDIUM_VEST:
|
case ITEM_TYPE::MEDIUM_VEST:
|
||||||
case ITEM_TYPE::BUCKLER:
|
case ITEM_TYPE::BUCKLER:
|
||||||
// Constitution requirement
|
// Cha1 requirement
|
||||||
caracType= CHARACTERISTICS::constitution;
|
caracType= CHARACTERISTICS::cha1;
|
||||||
caracValue= itemLevel / 1.5f;
|
caracValue= itemLevel / 1.5f;
|
||||||
return true;
|
return true;
|
||||||
case ITEM_TYPE::HEAVY_BOOTS:
|
case ITEM_TYPE::HEAVY_BOOTS:
|
||||||
|
@ -849,8 +849,8 @@ bool CItemSheet::hasCharacRequirement(uint itemLevel, CHARACTERISTICS::TCharacte
|
||||||
case ITEM_TYPE::HEAVY_VEST:
|
case ITEM_TYPE::HEAVY_VEST:
|
||||||
case ITEM_TYPE::HEAVY_HELMET:
|
case ITEM_TYPE::HEAVY_HELMET:
|
||||||
case ITEM_TYPE::SHIELD:
|
case ITEM_TYPE::SHIELD:
|
||||||
// Constitution requirement
|
// Cha1 requirement
|
||||||
caracType= CHARACTERISTICS::constitution;
|
caracType= CHARACTERISTICS::cha1;
|
||||||
caracValue= float((sint)itemLevel - 10);
|
caracValue= float((sint)itemLevel - 10);
|
||||||
caracValue= max(caracValue, 0.f);
|
caracValue= max(caracValue, 0.f);
|
||||||
return true;
|
return true;
|
||||||
|
@ -865,14 +865,14 @@ bool CItemSheet::hasCharacRequirement(uint itemLevel, CHARACTERISTICS::TCharacte
|
||||||
switch( ItemType )
|
switch( ItemType )
|
||||||
{
|
{
|
||||||
case ITEM_TYPE::MAGICIAN_STAFF:
|
case ITEM_TYPE::MAGICIAN_STAFF:
|
||||||
// Intelligence requirement
|
// Cha3 requirement
|
||||||
caracType= CHARACTERISTICS::intelligence;
|
caracType= CHARACTERISTICS::cha3;
|
||||||
caracValue= float((sint)itemLevel - 10);
|
caracValue= float((sint)itemLevel - 10);
|
||||||
caracValue= max(caracValue, 0.f);
|
caracValue= max(caracValue, 0.f);
|
||||||
return true;
|
return true;
|
||||||
default:
|
default:
|
||||||
// Strength requirement
|
// Cha2 requirement
|
||||||
caracType= CHARACTERISTICS::strength;
|
caracType= CHARACTERISTICS::cha2;
|
||||||
caracValue= float((sint)itemLevel - 10);
|
caracValue= float((sint)itemLevel - 10);
|
||||||
caracValue= max(caracValue, 0.f);
|
caracValue= max(caracValue, 0.f);
|
||||||
return true;
|
return true;
|
||||||
|
@ -881,7 +881,7 @@ bool CItemSheet::hasCharacRequirement(uint itemLevel, CHARACTERISTICS::TCharacte
|
||||||
|
|
||||||
// **** RANGE_WEAPON
|
// **** RANGE_WEAPON
|
||||||
case ITEMFAMILY::RANGE_WEAPON:
|
case ITEMFAMILY::RANGE_WEAPON:
|
||||||
caracType= CHARACTERISTICS::well_balanced;
|
caracType= CHARACTERISTICS::cha2_reg;
|
||||||
caracValue= float((sint)itemLevel - 10);
|
caracValue= float((sint)itemLevel - 10);
|
||||||
caracValue= max(caracValue, 0.f);
|
caracValue= max(caracValue, 0.f);
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -40,9 +40,9 @@ void CPactSheet::build(const NLGEORGES::UFormElm &root)
|
||||||
const UFormElm *node;
|
const UFormElm *node;
|
||||||
|
|
||||||
// variable is used for calculate pact effect in differential between pacts type
|
// variable is used for calculate pact effect in differential between pacts type
|
||||||
sint16 LoseHitPoints = 0;
|
sint16 LoseChaScore1 = 0;
|
||||||
sint16 LoseStamina = 0;
|
sint16 LoseChaScore2 = 0;
|
||||||
sint16 LoseSap = 0;
|
sint16 LoseChaScore3 = 0;
|
||||||
sint16 LoseSkills = 0;
|
sint16 LoseSkills = 0;
|
||||||
|
|
||||||
sint16 value;
|
sint16 value;
|
||||||
|
@ -54,20 +54,20 @@ void CPactSheet::build(const NLGEORGES::UFormElm &root)
|
||||||
|
|
||||||
if( node )
|
if( node )
|
||||||
{
|
{
|
||||||
node->getValueByName( value, "HitPoints" );
|
node->getValueByName( value, "ChaScore1" );
|
||||||
value = 0 - value - LoseHitPoints;
|
value = 0 - value - LoseChaScore1;
|
||||||
LoseHitPoints += value;
|
LoseChaScore1 += value;
|
||||||
PactLose[ i ].LoseHitPointsLevel = value;
|
PactLose[ i ].LoseChaScore1Level = value;
|
||||||
|
|
||||||
node->getValueByName( value, "Stamina" );
|
node->getValueByName( value, "ChaScore2" );
|
||||||
value = 0 - value - LoseStamina;
|
value = 0 - value - LoseChaScore2;
|
||||||
LoseStamina += value;
|
LoseChaScore2 += value;
|
||||||
PactLose[ i ].LoseStaminaLevel = value;
|
PactLose[ i ].LoseChaScore2Level = value;
|
||||||
|
|
||||||
node->getValueByName( value, "Sap" );
|
node->getValueByName( value, "ChaScore3" );
|
||||||
value = 0 - value - LoseSap;
|
value = 0 - value - LoseChaScore3;
|
||||||
LoseSap += value;
|
LoseChaScore3 += value;
|
||||||
PactLose[ i ].LoseSapLevel = value;
|
PactLose[ i ].LoseChaScore3Level = value;
|
||||||
|
|
||||||
node->getValueByName( value, "Skills" );
|
node->getValueByName( value, "Skills" );
|
||||||
value = 0 - value - LoseSkills;
|
value = 0 - value - LoseSkills;
|
||||||
|
|
|
@ -27,18 +27,18 @@ class CPactSheet : public CEntitySheet
|
||||||
public:
|
public:
|
||||||
struct SPact
|
struct SPact
|
||||||
{
|
{
|
||||||
uint16 LoseHitPointsLevel;
|
uint16 LoseChaScore1Level;
|
||||||
uint16 LoseStaminaLevel;
|
uint16 LoseChaScore2Level;
|
||||||
uint16 LoseSapLevel;
|
uint16 LoseChaScore3Level;
|
||||||
uint16 LoseSkillsLevel;
|
uint16 LoseSkillsLevel;
|
||||||
float Duration;
|
float Duration;
|
||||||
std::string Name;
|
std::string Name;
|
||||||
|
|
||||||
void serial(class NLMISC::IStream &f) throw(NLMISC::EStream)
|
void serial(class NLMISC::IStream &f) throw(NLMISC::EStream)
|
||||||
{
|
{
|
||||||
f.serial( LoseHitPointsLevel);
|
f.serial( LoseChaScore1Level);
|
||||||
f.serial( LoseStaminaLevel );
|
f.serial( LoseChaScore2Level );
|
||||||
f.serial( LoseSapLevel );
|
f.serial( LoseChaScore3Level );
|
||||||
f.serial( LoseSkillsLevel );
|
f.serial( LoseSkillsLevel );
|
||||||
f.serial( Duration );
|
f.serial( Duration );
|
||||||
f.serial( Name );
|
f.serial( Name );
|
||||||
|
|
|
@ -695,7 +695,7 @@ NLMISC_COMMAND(bugReport, "Call the bug report tool with dump", "<AddScreenshot>
|
||||||
if (ClientCfg.Local)
|
if (ClientCfg.Local)
|
||||||
sys += "ShardName OFFLINE ";
|
sys += "ShardName OFFLINE ";
|
||||||
|
|
||||||
FILE *fp = nlfopen (getLogDirectory() + "bug_report.txt", "wb");
|
FILE *fp = fopen (std::string(getLogDirectory() + "bug_report.txt").c_str(), "wb");
|
||||||
if (fp != NULL)
|
if (fp != NULL)
|
||||||
{
|
{
|
||||||
string res = addSlashR(getDebugInformation());
|
string res = addSlashR(getDebugInformation());
|
||||||
|
@ -2440,7 +2440,7 @@ NLMISC_COMMAND(mode, "Change the mode for an entity in a slot", "<Slot> <Mode> [
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
NLMISC_COMMAND(behaviour, "Change the behaviour for an entity in a slot", "<Slot> <Behaviour> [<Attack Intensity>] [<Impact Intensity>] [<delta HP>] [dt(tick)]")
|
NLMISC_COMMAND(behaviour, "Change the behaviour for an entity in a slot", "<Slot> <Behaviour> [<Attack Intensity>] [<Impact Intensity>] [<delta ChaScore1>] [dt(tick)]")
|
||||||
{
|
{
|
||||||
// Check parameters.
|
// Check parameters.
|
||||||
if(args.size() < 2 || args.size() > 6)
|
if(args.size() < 2 || args.size() > 6)
|
||||||
|
@ -2505,7 +2505,7 @@ NLMISC_COMMAND(behaviour, "Change the behaviour for an entity in a slot", "<Slot
|
||||||
behaviour.Combat.ImpactIntensity = impactIntensity;
|
behaviour.Combat.ImpactIntensity = impactIntensity;
|
||||||
}
|
}
|
||||||
if(args.size() > 4)
|
if(args.size() > 4)
|
||||||
fromString(args[4], behaviour.DeltaHP);
|
fromString(args[4], behaviour.DeltaChaScore1);
|
||||||
}
|
}
|
||||||
// get the dt
|
// get the dt
|
||||||
sint32 dt= 10;
|
sint32 dt= 10;
|
||||||
|
@ -4296,10 +4296,10 @@ NLMISC_COMMAND(debugItemInfo, "simulate a ItemInfo received from server", "itemS
|
||||||
itemInfo.ParryModifier= -10;
|
itemInfo.ParryModifier= -10;
|
||||||
itemInfo.AdversaryDodgeModifier= 666;
|
itemInfo.AdversaryDodgeModifier= 666;
|
||||||
itemInfo.AdversaryParryModifier= 333;
|
itemInfo.AdversaryParryModifier= 333;
|
||||||
itemInfo.HpBuff= 12;
|
itemInfo.ChaScore1Buff= 12;
|
||||||
itemInfo.SapBuff= -14;
|
itemInfo.ChaScore3Buff= -14;
|
||||||
itemInfo.StaBuff= 0;
|
itemInfo.ChaScore2Buff= 0;
|
||||||
itemInfo.FocusBuff= 1;
|
itemInfo.ChaScore4Buff= 1;
|
||||||
itemInfo.MagicProtection[0]= PROTECTION_TYPE::Electricity;
|
itemInfo.MagicProtection[0]= PROTECTION_TYPE::Electricity;
|
||||||
itemInfo.MagicProtectionFactor[0]= 43;
|
itemInfo.MagicProtectionFactor[0]= 43;
|
||||||
itemInfo.MagicProtection[1]= PROTECTION_TYPE::Shockwave;
|
itemInfo.MagicProtection[1]= PROTECTION_TYPE::Shockwave;
|
||||||
|
|
|
@ -86,7 +86,7 @@ namespace NL3D
|
||||||
|
|
||||||
class CEntitySheet;
|
class CEntitySheet;
|
||||||
class CEntityCL;
|
class CEntityCL;
|
||||||
struct CAttackInfo;
|
class CAttackInfo;
|
||||||
|
|
||||||
class CItemSheet;
|
class CItemSheet;
|
||||||
|
|
||||||
|
@ -261,7 +261,7 @@ public:
|
||||||
|
|
||||||
/// Display the entity name.
|
/// Display the entity name.
|
||||||
virtual void displayName() {}
|
virtual void displayName() {}
|
||||||
/// Display the Hp Modifiers
|
/// Display the ChaScore1 Modifiers
|
||||||
virtual void displayModifiers() {}
|
virtual void displayModifiers() {}
|
||||||
/// Draw Path
|
/// Draw Path
|
||||||
virtual void drawPath() {}
|
virtual void drawPath() {}
|
||||||
|
@ -631,9 +631,9 @@ public:
|
||||||
/// Return true if the character is really dead. With no lag because of anim or LCT
|
/// Return true if the character is really dead. With no lag because of anim or LCT
|
||||||
virtual bool isReallyDead() const {return false;}
|
virtual bool isReallyDead() const {return false;}
|
||||||
|
|
||||||
// Add hit points gain/lost by this entity.
|
// Add ChaScore1 gain/lost by this entity.
|
||||||
void addHPOutput(sint16 hp, NLMISC::CRGBA color, float dt=0.0f) { if(_HPModifiers.size()<20) _HPModifiers.push_back(CHPModifier(hp,color,dt));}
|
void addChaScore1Output(sint16 ChaScore1, NLMISC::CRGBA color, float dt=0.0f) { if(_ChaScore1Modifiers.size()<20) _ChaScore1Modifiers.push_back(CChaScore1Modifier(ChaScore1,color,dt));}
|
||||||
void addHPOutput(const ucstring &text, NLMISC::CRGBA color, float dt=0.0f) { if(_HPModifiers.size()<20 && !text.empty()) _HPModifiers.push_back(CHPModifier(text,color,dt));}
|
void addChaScore1Output(const ucstring &text, NLMISC::CRGBA color, float dt=0.0f) { if(_ChaScore1Modifiers.size()<20 && !text.empty()) _ChaScore1Modifiers.push_back(CChaScore1Modifier(text,color,dt));}
|
||||||
|
|
||||||
/// Return the entity sheet scale. (return 1.0 if there is any problem).
|
/// Return the entity sheet scale. (return 1.0 if there is any problem).
|
||||||
virtual float getSheetScale() const {return 1.0f;}
|
virtual float getSheetScale() const {return 1.0f;}
|
||||||
|
@ -984,33 +984,33 @@ protected:
|
||||||
// Local selection box
|
// Local selection box
|
||||||
NLMISC::CAABBox _LocalSelectBox;
|
NLMISC::CAABBox _LocalSelectBox;
|
||||||
// List of modifiers taken by this entity.
|
// List of modifiers taken by this entity.
|
||||||
class CHPModifier
|
class CChaScore1Modifier
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CHPModifier() {}
|
CChaScore1Modifier() {}
|
||||||
virtual ~CHPModifier() {}
|
virtual ~CChaScore1Modifier() {}
|
||||||
CHPModifier (sint16 value, NLMISC::CRGBA color, float dt) : Value(value), Color(color), DeltaT(dt) {}
|
CChaScore1Modifier (sint16 value, NLMISC::CRGBA color, float dt) : Value(value), Color(color), DeltaT(dt) {}
|
||||||
CHPModifier (const ucstring &text, NLMISC::CRGBA color, float dt) : Text(text), Color(color), DeltaT(dt) {}
|
CChaScore1Modifier (const ucstring &text, NLMISC::CRGBA color, float dt) : Text(text), Color(color), DeltaT(dt) {}
|
||||||
|
|
||||||
sint16 Value; // If Text.empty(), take the Value
|
sint16 Value; // If Text.empty(), take the Value
|
||||||
ucstring Text;
|
ucstring Text;
|
||||||
NLMISC::CRGBA Color;
|
NLMISC::CRGBA Color;
|
||||||
float DeltaT;
|
float DeltaT;
|
||||||
};
|
};
|
||||||
std::list<CHPModifier> _HPModifiers;
|
std::list<CChaScore1Modifier> _ChaScore1Modifiers;
|
||||||
//
|
//
|
||||||
class HPMD : public CHPModifier
|
class ChaScore1MD : public CChaScore1Modifier
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
double Time;
|
double Time;
|
||||||
// DeltaZ between pos() and namePos(). computed only one time
|
// DeltaZ between pos() and namePos(). computed only one time
|
||||||
float DeltaZ;
|
float DeltaZ;
|
||||||
HPMD()
|
ChaScore1MD()
|
||||||
{
|
{
|
||||||
DeltaZ= -FLT_MAX;
|
DeltaZ= -FLT_MAX;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
std::list<HPMD> _HPDisplayed;
|
std::list<ChaScore1MD> _ChaScore1Displayed;
|
||||||
|
|
||||||
// The transparency factor
|
// The transparency factor
|
||||||
float _TranspFactor; // 0 - opaque 1 - transparent
|
float _TranspFactor; // 0 - opaque 1 - transparent
|
||||||
|
|
|
@ -215,13 +215,13 @@ void CForageSourceCL::updateClipped (const NLMISC::TTime ¤tTimeInMs, CEnti
|
||||||
void CForageSourceCL::updateVisible(const NLMISC::TTime &time, CEntityCL *target)
|
void CForageSourceCL::updateVisible(const NLMISC::TTime &time, CEntityCL *target)
|
||||||
{
|
{
|
||||||
// Update Modifiers
|
// Update Modifiers
|
||||||
if(!_HPModifiers.empty())
|
if(!_ChaScore1Modifiers.empty())
|
||||||
{
|
{
|
||||||
HPMD mod;
|
ChaScore1MD mod;
|
||||||
mod.CHPModifier::operator= (*_HPModifiers.begin());
|
mod.CChaScore1Modifier::operator= (*_ChaScore1Modifiers.begin());
|
||||||
mod.Time = TimeInSec;
|
mod.Time = TimeInSec;
|
||||||
_HPDisplayed.push_back(mod);
|
_ChaScore1Displayed.push_back(mod);
|
||||||
_HPModifiers.erase(_HPModifiers.begin());
|
_ChaScore1Modifiers.erase(_ChaScore1Modifiers.begin());
|
||||||
}
|
}
|
||||||
|
|
||||||
// parent
|
// parent
|
||||||
|
@ -581,7 +581,7 @@ void CForageSourceCL::updateVisualPropertyTarget(const NLMISC::TGameCycle &/* ga
|
||||||
void CForageSourceCL::displayModifiers()
|
void CForageSourceCL::displayModifiers()
|
||||||
{
|
{
|
||||||
// if none, no op
|
// if none, no op
|
||||||
if( _HPDisplayed.empty())
|
if( _ChaScore1Displayed.empty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// **** get the name pos
|
// **** get the name pos
|
||||||
|
@ -598,13 +598,13 @@ void CForageSourceCL::displayModifiers()
|
||||||
scale = ClientCfg.ConstNameSizeDist / dist;
|
scale = ClientCfg.ConstNameSizeDist / dist;
|
||||||
|
|
||||||
|
|
||||||
// **** Display HP modifiers.
|
// **** Display ChaScore1 modifiers.
|
||||||
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
||||||
std::list<HPMD>::iterator itTmp;
|
std::list<ChaScore1MD>::iterator itTmp;
|
||||||
std::list<HPMD>::iterator it = _HPDisplayed.begin();
|
std::list<ChaScore1MD>::iterator it = _ChaScore1Displayed.begin();
|
||||||
while(it != _HPDisplayed.end())
|
while(it != _ChaScore1Displayed.end())
|
||||||
{
|
{
|
||||||
HPMD &mod = *it;
|
ChaScore1MD &mod = *it;
|
||||||
//
|
//
|
||||||
const float totalDuration= 3.f;
|
const float totalDuration= 3.f;
|
||||||
const float noFadeDuration= 1.f;
|
const float noFadeDuration= 1.f;
|
||||||
|
@ -613,13 +613,13 @@ void CForageSourceCL::displayModifiers()
|
||||||
{
|
{
|
||||||
itTmp = it;
|
itTmp = it;
|
||||||
++it;
|
++it;
|
||||||
_HPDisplayed.erase(itTmp);
|
_ChaScore1Displayed.erase(itTmp);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
uint16 qttyDelta = ((uint16)mod.Value) & 0xFF;
|
uint16 qttyDelta = ((uint16)mod.Value) & 0xFF;
|
||||||
uint16 qlty = ((uint16)mod.Value) >> 8;
|
uint16 qlty = ((uint16)mod.Value) >> 8;
|
||||||
ucstring hpModifier = ucstring(toString("%u ", qttyDelta) + CI18N::get("uittQualityAbbrev") + toString(" %u", qlty));
|
ucstring ChaScore1Modifier = ucstring(toString("%u ", qttyDelta) + CI18N::get("uittQualityAbbrev") + toString(" %u", qlty));
|
||||||
double t = TimeInSec-mod.Time;
|
double t = TimeInSec-mod.Time;
|
||||||
// Compute the position for the Modifier.
|
// Compute the position for the Modifier.
|
||||||
CVector pos= namePos + CVector(0.0f, 0.0f, 0.3f+(float)t*1.0f/totalDuration);
|
CVector pos= namePos + CVector(0.0f, 0.0f, 0.3f+(float)t*1.0f/totalDuration);
|
||||||
|
@ -636,7 +636,7 @@ void CForageSourceCL::displayModifiers()
|
||||||
color.A= 255-(uint8)((t-noFadeDuration)*255.0/fadeDuration);
|
color.A= 255-(uint8)((t-noFadeDuration)*255.0/fadeDuration);
|
||||||
|
|
||||||
// Display the name
|
// Display the name
|
||||||
pIM->FlyingTextManager.addFlyingText(&mod, hpModifier, pos, color, scale);
|
pIM->FlyingTextManager.addFlyingText(&mod, ChaScore1Modifier, pos, color, scale);
|
||||||
|
|
||||||
// Next
|
// Next
|
||||||
++it;
|
++it;
|
||||||
|
|
|
@ -3968,8 +3968,8 @@ static void fillPlayerBarText(ucstring &str, const string &dbScore, SCORES::TSco
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
// Life
|
// ChaScore1
|
||||||
class CHandlerPlayerTTLife : public IActionHandler
|
class CHandlerPlayerTTChaScore1 : public IActionHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
void execute (CCtrlBase * /* pCaller */, const std::string &/* sParams */)
|
void execute (CCtrlBase * /* pCaller */, const std::string &/* sParams */)
|
||||||
|
@ -3977,16 +3977,16 @@ public:
|
||||||
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
||||||
|
|
||||||
ucstring str;
|
ucstring str;
|
||||||
fillPlayerBarText(str, "HP", SCORES::hit_points, "uittPlayerLifeFormat");
|
fillPlayerBarText(str, "ChaScore1", SCORES::cha_score1, "uittPlayerChaScore1Format");
|
||||||
|
|
||||||
CWidgetManager::getInstance()->setContextHelpText(str);
|
CWidgetManager::getInstance()->setContextHelpText(str);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
REGISTER_ACTION_HANDLER(CHandlerPlayerTTLife, "player_tt_life");
|
REGISTER_ACTION_HANDLER(CHandlerPlayerTTChaScore1, "player_tt_cha_score1");
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
// Stamina
|
// ChaScore2
|
||||||
class CHandlerPlayerTTStamina : public IActionHandler
|
class CHandlerPlayerTTChaScore2 : public IActionHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
void execute (CCtrlBase * /* pCaller */, const std::string &/* sParams */)
|
void execute (CCtrlBase * /* pCaller */, const std::string &/* sParams */)
|
||||||
|
@ -3994,16 +3994,16 @@ public:
|
||||||
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
||||||
|
|
||||||
ucstring str;
|
ucstring str;
|
||||||
fillPlayerBarText(str, "STA", SCORES::stamina, "uittPlayerStaminaFormat");
|
fillPlayerBarText(str, "ChaScore2", SCORES::cha_score1, "uittPlayerChaScore2Format");
|
||||||
|
|
||||||
CWidgetManager::getInstance()->setContextHelpText(str);
|
CWidgetManager::getInstance()->setContextHelpText(str);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
REGISTER_ACTION_HANDLER(CHandlerPlayerTTStamina, "player_tt_stamina");
|
REGISTER_ACTION_HANDLER(CHandlerPlayerTTChaScore2, "player_tt_cha_score2");
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
// Sap
|
// ChaScore3
|
||||||
class CHandlerPlayerTTSap : public IActionHandler
|
class CHandlerPlayerTTChaScore3 : public IActionHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
void execute (CCtrlBase * /* pCaller */, const std::string &/* sParams */)
|
void execute (CCtrlBase * /* pCaller */, const std::string &/* sParams */)
|
||||||
|
@ -4011,16 +4011,16 @@ public:
|
||||||
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
||||||
|
|
||||||
ucstring str;
|
ucstring str;
|
||||||
fillPlayerBarText(str, "SAP", SCORES::sap, "uittPlayerSapFormat");
|
fillPlayerBarText(str, "ChaScore3", SCORES::cha_score3, "uittPlayerChaScore3Format");
|
||||||
|
|
||||||
CWidgetManager::getInstance()->setContextHelpText(str);
|
CWidgetManager::getInstance()->setContextHelpText(str);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
REGISTER_ACTION_HANDLER(CHandlerPlayerTTSap, "player_tt_sap");
|
REGISTER_ACTION_HANDLER(CHandlerPlayerTTChaScore3, "player_tt_cha_score3");
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
// Focus
|
// ChaScore4
|
||||||
class CHandlerPlayerTTFocus : public IActionHandler
|
class CHandlerPlayerTTChaScore4 : public IActionHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
void execute (CCtrlBase * /* pCaller */, const std::string &/* sParams */)
|
void execute (CCtrlBase * /* pCaller */, const std::string &/* sParams */)
|
||||||
|
@ -4028,12 +4028,12 @@ public:
|
||||||
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
||||||
|
|
||||||
ucstring str;
|
ucstring str;
|
||||||
fillPlayerBarText(str, "FOCUS", SCORES::focus, "uittPlayerFocusFormat");
|
fillPlayerBarText(str, "ChaScore4", SCORES::cha_score4, "uittPlayerChaScore4Format");
|
||||||
|
|
||||||
CWidgetManager::getInstance()->setContextHelpText(str);
|
CWidgetManager::getInstance()->setContextHelpText(str);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
REGISTER_ACTION_HANDLER(CHandlerPlayerTTFocus, "player_tt_focus");
|
REGISTER_ACTION_HANDLER(CHandlerPlayerTTChaScore4, "player_tt_cha_score4");
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
// Bulk: NB: work for player / animal
|
// Bulk: NB: work for player / animal
|
||||||
|
@ -4179,7 +4179,7 @@ public:
|
||||||
|
|
||||||
CRGBA color = CRGBA::stringToRGBA(getParam(sParams, "color").c_str());
|
CRGBA color = CRGBA::stringToRGBA(getParam(sParams, "color").c_str());
|
||||||
if (entity < 256)
|
if (entity < 256)
|
||||||
EntitiesMngr.entity (entity)->addHPOutput (CI18N::get (text), color);
|
EntitiesMngr.entity (entity)->addChaScore1Output (CI18N::get (text), color);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
REGISTER_ACTION_HANDLER(CHandlerEntityFlyingText, "entity_flying_text");
|
REGISTER_ACTION_HANDLER(CHandlerEntityFlyingText, "entity_flying_text");
|
||||||
|
|
|
@ -1389,8 +1389,8 @@ void getBuffText(CDBCtrlSheet *item, ucstring &itemText)
|
||||||
// retrieve the current itemInfo
|
// retrieve the current itemInfo
|
||||||
const CClientItemInfo &itemInfo= getInventory().getItemInfo(getInventory().getItemSlotId(item) );
|
const CClientItemInfo &itemInfo= getInventory().getItemInfo(getInventory().getItemSlotId(item) );
|
||||||
|
|
||||||
const string valIds[]={"Hp", "Sap", "Sta", "Focus"};
|
const string valIds[]={"ChaScore1", "ChaScore3", "ChaScore2", "ChaScore4"};
|
||||||
sint32 vals[]= {itemInfo.HpBuff, itemInfo.SapBuff, itemInfo.StaBuff, itemInfo.FocusBuff};
|
sint32 vals[]= {itemInfo.ChaScore1Buff, itemInfo.ChaScore3Buff, itemInfo.ChaScore2Buff, itemInfo.ChaScore4Buff};
|
||||||
uint numVals= sizeof(vals) / sizeof(vals[0]);
|
uint numVals= sizeof(vals) / sizeof(vals[0]);
|
||||||
ucstring bufInfo;
|
ucstring bufInfo;
|
||||||
|
|
||||||
|
@ -1840,7 +1840,7 @@ void getArmorBonus(CDBCtrlSheet *item, ucstring &itemText, const CItemSheet*pIS)
|
||||||
level = item->getQuality() / 2;
|
level = item->getQuality() / 2;
|
||||||
|
|
||||||
if (pIS->Armor.ArmorType == ARMORTYPE::HEAVY || pIS->Armor.ArmorType == ARMORTYPE::MEDIUM)
|
if (pIS->Armor.ArmorType == ARMORTYPE::HEAVY || pIS->Armor.ArmorType == ARMORTYPE::MEDIUM)
|
||||||
armor_bonus = "@{FFFF}(+@{2F2F}" + toString(level) + " @{FFFF}" + CI18N::get("uiHP") + ")";
|
armor_bonus = "@{FFFF}(+@{2F2F}" + toString(level) + " @{FFFF}" + CI18N::get("uiChaScore1") + ")";
|
||||||
|
|
||||||
strFindReplace(itemText, "%armor_bonus", armor_bonus);
|
strFindReplace(itemText, "%armor_bonus", armor_bonus);
|
||||||
}
|
}
|
||||||
|
@ -2596,9 +2596,9 @@ static void setupPactHelp(CSheetHelpSetup &setup)
|
||||||
|
|
||||||
pactText= CI18N::get("uihelpPactFormat");
|
pactText= CI18N::get("uihelpPactFormat");
|
||||||
strFindReplace(pactText, "%lvl", toString(pactLevel));
|
strFindReplace(pactText, "%lvl", toString(pactLevel));
|
||||||
strFindReplace(pactText, "%hp", toString(pactLose.LoseHitPointsLevel));
|
strFindReplace(pactText, "%ChaScore1", toString(pactLose.LoseChaScore1Level));
|
||||||
strFindReplace(pactText, "%sta", toString(pactLose.LoseStaminaLevel));
|
strFindReplace(pactText, "%ChaScore2", toString(pactLose.LoseChaScore2Level));
|
||||||
strFindReplace(pactText, "%sap", toString(pactLose.LoseSapLevel));
|
strFindReplace(pactText, "%ChaScore3", toString(pactLose.LoseChaScore3Level));
|
||||||
strFindReplace(pactText, "%skill", toString(pactLose.LoseSkillsLevel));
|
strFindReplace(pactText, "%skill", toString(pactLose.LoseSkillsLevel));
|
||||||
|
|
||||||
// **** setup the text
|
// **** setup the text
|
||||||
|
@ -3937,15 +3937,13 @@ public:
|
||||||
s += getSystemInformation();
|
s += getSystemInformation();
|
||||||
|
|
||||||
string progname;
|
string progname;
|
||||||
std::string moduleName;
|
char name[1024] = "";
|
||||||
#ifdef NL_OS_WINDOWS
|
#ifdef NL_OS_WINDOWS
|
||||||
wchar_t name[1024];
|
GetModuleFileName (NULL, name, 1023);
|
||||||
GetModuleFileNameW(NULL, name, 1023);
|
|
||||||
moduleName = wideToUtf8(name);
|
|
||||||
#else
|
#else
|
||||||
// TODO for Linux
|
// TODO for Linux
|
||||||
#endif
|
#endif
|
||||||
progname = CFile::getFilename(moduleName);
|
progname = CFile::getFilename(name);
|
||||||
progname += " ";
|
progname += " ";
|
||||||
progname += "Statistic Report";
|
progname += "Statistic Report";
|
||||||
|
|
||||||
|
|
|
@ -97,7 +97,7 @@ void CBarManager::CBarDataEntry::resetDB()
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
void CBarManager::CBarDataEntry::connectDB(const std::string &baseDBin, const std::string &baseDBout, const std::string &presentDB,
|
void CBarManager::CBarDataEntry::connectDB(const std::string &baseDBin, const std::string &baseDBout, const std::string &presentDB,
|
||||||
const std::string &hpDB, const std::string &sapDB, const std::string &staDB, const std::string &focusDB)
|
const std::string &ChaScore1DB, const std::string &ChaScore3DB, const std::string &ChaScore2DB, const std::string &ChaScore4DB)
|
||||||
{
|
{
|
||||||
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
CInterfaceManager *pIM= CInterfaceManager::getInstance();
|
||||||
|
|
||||||
|
@ -110,27 +110,27 @@ void CBarManager::CBarDataEntry::connectDB(const std::string &baseDBin, const st
|
||||||
UIDIn= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+"UID", false);
|
UIDIn= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+"UID", false);
|
||||||
if(!presentDB.empty())
|
if(!presentDB.empty())
|
||||||
PresentIn= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+presentDB, false);
|
PresentIn= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+presentDB, false);
|
||||||
if(!hpDB.empty())
|
if(!ChaScore1DB.empty())
|
||||||
ScoreIn[SCORES::hit_points]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+hpDB, false);
|
ScoreIn[SCORES::cha_score1]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+ChaScore1DB, false);
|
||||||
if(!sapDB.empty())
|
if(!ChaScore3DB.empty())
|
||||||
ScoreIn[SCORES::sap]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+sapDB, false);
|
ScoreIn[SCORES::cha_score3]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+ChaScore3DB, false);
|
||||||
if(!staDB.empty())
|
if(!ChaScore2DB.empty())
|
||||||
ScoreIn[SCORES::stamina]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+staDB, false);
|
ScoreIn[SCORES::cha_score2]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+ChaScore2DB, false);
|
||||||
if(!focusDB.empty())
|
if(!ChaScore4DB.empty())
|
||||||
ScoreIn[SCORES::focus]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+focusDB, false);
|
ScoreIn[SCORES::cha_score4]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBin+ChaScore4DB, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
// try to connect each output entry (don't create)
|
// try to connect each output entry (don't create)
|
||||||
if(!baseDBout.empty())
|
if(!baseDBout.empty())
|
||||||
{
|
{
|
||||||
if(!hpDB.empty())
|
if(!ChaScore1DB.empty())
|
||||||
ScoreOut[SCORES::hit_points]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBout+hpDB, false);
|
ScoreOut[SCORES::cha_score1]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBout+ChaScore1DB, false);
|
||||||
if(!sapDB.empty())
|
if(!ChaScore3DB.empty())
|
||||||
ScoreOut[SCORES::sap]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBout+sapDB, false);
|
ScoreOut[SCORES::cha_score3]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBout+ChaScore3DB, false);
|
||||||
if(!staDB.empty())
|
if(!ChaScore2DB.empty())
|
||||||
ScoreOut[SCORES::stamina]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBout+staDB, false);
|
ScoreOut[SCORES::cha_score2]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBout+ChaScore2DB, false);
|
||||||
if(!focusDB.empty())
|
if(!ChaScore4DB.empty())
|
||||||
ScoreOut[SCORES::focus]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBout+focusDB, false);
|
ScoreOut[SCORES::cha_score4]= NLGUI::CDBManager::getInstance()->getDbProp(baseDBout+ChaScore4DB, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -207,28 +207,28 @@ void CBarManager::initInGame()
|
||||||
// *** create connexion to the Local Output database
|
// *** create connexion to the Local Output database
|
||||||
for(i=0;i<_EntryBars[TeamMemberType].size();i++)
|
for(i=0;i<_EntryBars[TeamMemberType].size();i++)
|
||||||
{
|
{
|
||||||
// don't connect FOCUS, since not setuped by SERVER
|
// don't connect ChaScore4, since not setuped by SERVER
|
||||||
_EntryBars[TeamMemberType][i].connectDB(
|
_EntryBars[TeamMemberType][i].connectDB(
|
||||||
toString("SERVER:GROUP:%d:",i),
|
toString("SERVER:GROUP:%d:",i),
|
||||||
toString("UI:VARIABLES:BARS:TEAM:%d:",i),
|
toString("UI:VARIABLES:BARS:TEAM:%d:",i),
|
||||||
"PRESENT",
|
"PRESENT",
|
||||||
"HP", "SAP", "STA", "");
|
"ChaScore1", "ChaScore3", "ChaScore2", "");
|
||||||
}
|
}
|
||||||
for(i=0;i<_EntryBars[AnimalType].size();i++)
|
for(i=0;i<_EntryBars[AnimalType].size();i++)
|
||||||
{
|
{
|
||||||
// don't connect STA, SAP and FOCUS for animal, since they don't have
|
// don't connect ChaScore2, ChaScore3 and ChaScore4 for animal, since they don't have
|
||||||
_EntryBars[AnimalType][i].connectDB(
|
_EntryBars[AnimalType][i].connectDB(
|
||||||
toString("SERVER:PACK_ANIMAL:BEAST%d:",i),
|
toString("SERVER:PACK_ANIMAL:BEAST%d:",i),
|
||||||
toString("UI:VARIABLES:BARS:ANIMAL:%d:",i),
|
toString("UI:VARIABLES:BARS:ANIMAL:%d:",i),
|
||||||
"STATUS",
|
"STATUS",
|
||||||
"HP", "", "", "");
|
"ChaScore1", "", "", "");
|
||||||
}
|
}
|
||||||
nlassert(_EntryBars[TargetType].size()==1);
|
nlassert(_EntryBars[TargetType].size()==1);
|
||||||
_EntryBars[TargetType][0].connectDB(
|
_EntryBars[TargetType][0].connectDB(
|
||||||
"SERVER:TARGET:BARS:",
|
"SERVER:TARGET:BARS:",
|
||||||
"UI:VARIABLES:BARS:TARGET:",
|
"UI:VARIABLES:BARS:TARGET:",
|
||||||
"", // no present flag for target (not so important)
|
"", // no present flag for target (not so important)
|
||||||
"HP", "SAP", "STA", "FOCUS");
|
"ChaScore1", "ChaScore3", "ChaScore2", "ChaScore4");
|
||||||
|
|
||||||
// NB: don't connect the DB for entities, since CEntityCL read it directly from getBarsByEntityId() (simpler and faster)
|
// NB: don't connect the DB for entities, since CEntityCL read it directly from getBarsByEntityId() (simpler and faster)
|
||||||
|
|
||||||
|
@ -237,30 +237,30 @@ void CBarManager::initInGame()
|
||||||
nlctassert(MaxEntryType==4);
|
nlctassert(MaxEntryType==4);
|
||||||
nlctassert(SCORES::NUM_SCORES==4);
|
nlctassert(SCORES::NUM_SCORES==4);
|
||||||
// For each entry type, tells what score they can affect (see DB connection above)
|
// For each entry type, tells what score they can affect (see DB connection above)
|
||||||
_EntryScoreFlags[EntityType]= HpFlag | SapFlag | StaFlag | FocusFlag; // all
|
_EntryScoreFlags[EntityType]= ChaScore1Flag | ChaScore3Flag | ChaScore2Flag | ChaScore4Flag; // all
|
||||||
_EntryScoreFlags[TeamMemberType]= HpFlag | SapFlag | StaFlag; // anything but focus
|
_EntryScoreFlags[TeamMemberType]= ChaScore1Flag | ChaScore3Flag | ChaScore2Flag; // anything but ChaScore4
|
||||||
_EntryScoreFlags[AnimalType]= HpFlag; // Hp only
|
_EntryScoreFlags[AnimalType]= ChaScore1Flag; // ChaScore1 only
|
||||||
_EntryScoreFlags[TargetType]= HpFlag | SapFlag | StaFlag | FocusFlag; // all
|
_EntryScoreFlags[TargetType]= ChaScore1Flag | ChaScore3Flag | ChaScore2Flag | ChaScore4Flag; // all
|
||||||
|
|
||||||
|
|
||||||
// *** create connexion for User Bar mgt
|
// *** create connexion for User Bar mgt
|
||||||
// user now can only manage 4 scores
|
// user now can only manage 4 scores
|
||||||
nlctassert(SCORES::NUM_SCORES==4);
|
nlctassert(SCORES::NUM_SCORES==4);
|
||||||
// Input max values
|
// Input max values
|
||||||
_UserScores[SCORES::hit_points].DBInMax= NLGUI::CDBManager::getInstance()->getDbProp("SERVER:CHARACTER_INFO:SCORES0:Max", false);
|
_UserScores[SCORES::cha_score1].DBInMax= NLGUI::CDBManager::getInstance()->getDbProp("SERVER:CHARACTER_INFO:SCORES0:Max", false);
|
||||||
_UserScores[SCORES::sap].DBInMax= NLGUI::CDBManager::getInstance()->getDbProp("SERVER:CHARACTER_INFO:SCORES2:Max", false);
|
_UserScores[SCORES::cha_score3].DBInMax= NLGUI::CDBManager::getInstance()->getDbProp("SERVER:CHARACTER_INFO:SCORES2:Max", false);
|
||||||
_UserScores[SCORES::stamina].DBInMax= NLGUI::CDBManager::getInstance()->getDbProp("SERVER:CHARACTER_INFO:SCORES1:Max", false);
|
_UserScores[SCORES::cha_score2].DBInMax= NLGUI::CDBManager::getInstance()->getDbProp("SERVER:CHARACTER_INFO:SCORES1:Max", false);
|
||||||
_UserScores[SCORES::focus].DBInMax= NLGUI::CDBManager::getInstance()->getDbProp("SERVER:CHARACTER_INFO:SCORES3:Max", false);
|
_UserScores[SCORES::cha_score3].DBInMax= NLGUI::CDBManager::getInstance()->getDbProp("SERVER:CHARACTER_INFO:SCORES3:Max", false);
|
||||||
// Output real values
|
// Output real values
|
||||||
_UserScores[SCORES::hit_points].DBOutVal= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:HP", false);
|
_UserScores[SCORES::cha_score1].DBOutVal= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:ChaScore1", false);
|
||||||
_UserScores[SCORES::sap].DBOutVal= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:SAP", false);
|
_UserScores[SCORES::cha_score3].DBOutVal= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:ChaScore3", false);
|
||||||
_UserScores[SCORES::stamina].DBOutVal= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:STA", false);
|
_UserScores[SCORES::cha_score2].DBOutVal= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:ChaScore2", false);
|
||||||
_UserScores[SCORES::focus].DBOutVal= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:FOCUS", false);
|
_UserScores[SCORES::cha_score4].DBOutVal= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:ChaScore4", false);
|
||||||
// Output ratio values
|
// Output ratio values
|
||||||
_UserScores[SCORES::hit_points].DBOutRatio= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:HP_RATIO", false);
|
_UserScores[SCORES::cha_score1].DBOutRatio= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:ChaScore1_RATIO", false);
|
||||||
_UserScores[SCORES::sap].DBOutRatio= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:SAP_RATIO", false);
|
_UserScores[SCORES::cha_score3].DBOutRatio= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:ChaScore3_RATIO", false);
|
||||||
_UserScores[SCORES::stamina].DBOutRatio= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:STA_RATIO", false);
|
_UserScores[SCORES::cha_score2].DBOutRatio= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:ChaScore2_RATIO", false);
|
||||||
_UserScores[SCORES::focus].DBOutRatio= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:FOCUS_RATIO", false);
|
_UserScores[SCORES::cha_score4].DBOutRatio= NLGUI::CDBManager::getInstance()->getDbProp("UI:VARIABLES:USER:ChaScore4_RATIO", false);
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
|
@ -410,7 +410,7 @@ void CBarManager::updateBars(uint dataSetId, CBarInfo barInfo, TGameCycle serve
|
||||||
if(it==_UIDBars.end())
|
if(it==_UIDBars.end())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
barInfoLog("BARS: updateBars(dsid=%x, biHP=%d, t=%d, sf=%x", dataSetId, barInfo.Score[SCORES::hit_points], serverTick, scoreFlags);
|
barInfoLog("BARS: updateBars(dsid=%x, biChaScore1=%d, t=%d, sf=%x", dataSetId, barInfo.Score[SCORES::cha_score1], serverTick, scoreFlags);
|
||||||
|
|
||||||
// special Case: if the info is for the User (slot 0)
|
// special Case: if the info is for the User (slot 0)
|
||||||
if(dataSetId==_EntryBars[EntityType][0].DataSetId)
|
if(dataSetId==_EntryBars[EntityType][0].DataSetId)
|
||||||
|
@ -585,7 +585,7 @@ CBarManager::CBarInfo CBarManager::getBarsByEntityId(CLFECOMMON::TCLEntityId ent
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
void CBarManager::setupUserBarInfo(uint8 msgNumber, sint32 hp, sint32 sap, sint32 sta, sint32 focus)
|
void CBarManager::setupUserBarInfo(uint8 msgNumber, sint32 ChaScore1, sint32 ChaScore3, sint32 ChaScore2, sint32 ChaScore4)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
Since we are not sure of the message order, use a little counter to discard old messages
|
Since we are not sure of the message order, use a little counter to discard old messages
|
||||||
|
@ -614,10 +614,10 @@ void CBarManager::setupUserBarInfo(uint8 msgNumber, sint32 hp, sint32 sap, sint3
|
||||||
_LastUserBarMsgNumber= msgNumber;
|
_LastUserBarMsgNumber= msgNumber;
|
||||||
// user now can only manage 4 scores
|
// user now can only manage 4 scores
|
||||||
nlctassert(SCORES::NUM_SCORES==4);
|
nlctassert(SCORES::NUM_SCORES==4);
|
||||||
_UserScores[SCORES::hit_points].Score= hp;
|
_UserScores[SCORES::cha_score1].Score= ChaScore1;
|
||||||
_UserScores[SCORES::sap].Score= sap;
|
_UserScores[SCORES::cha_score3].Score= ChaScore3;
|
||||||
_UserScores[SCORES::stamina].Score= sta;
|
_UserScores[SCORES::cha_score2].Score= ChaScore2;
|
||||||
_UserScores[SCORES::focus].Score= focus;
|
_UserScores[SCORES::cha_score4].Score= ChaScore4;
|
||||||
|
|
||||||
// update actual database now.
|
// update actual database now.
|
||||||
for(uint i=0;i<SCORES::NUM_SCORES;i++)
|
for(uint i=0;i<SCORES::NUM_SCORES;i++)
|
||||||
|
@ -681,7 +681,7 @@ void CBarManager::updateUserBars()
|
||||||
|
|
||||||
// update (user can only manage 4 scores for now)
|
// update (user can only manage 4 scores for now)
|
||||||
nlctassert(SCORES::NUM_SCORES==4);
|
nlctassert(SCORES::NUM_SCORES==4);
|
||||||
updateBars(userDataSetId, _UserBarInfo, serverTick, HpFlag | SapFlag | StaFlag | FocusFlag);
|
updateBars(userDataSetId, _UserBarInfo, serverTick, ChaScore1Flag | ChaScore3Flag | ChaScore2Flag | ChaScore4Flag);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace NLMISC{
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
/**
|
/**
|
||||||
* Class that Manage display of Bars (HP, Sta, Sap, Focus)
|
* Class that Manage display of Bars (ChaScore1, ChaScore2, ChaScore3, ChaScore4)
|
||||||
* Such a manager is necessary because the property are sent in 2 ways:
|
* Such a manager is necessary because the property are sent in 2 ways:
|
||||||
* - From Visual Property, often more frequently updated, but only if Entity is in Vision AND within
|
* - From Visual Property, often more frequently updated, but only if Entity is in Vision AND within
|
||||||
* a certain distance (aka VP threshold which is for instance 30m for Bars)
|
* a certain distance (aka VP threshold which is for instance 30m for Bars)
|
||||||
|
@ -81,10 +81,10 @@ public:
|
||||||
// Flags
|
// Flags
|
||||||
enum TScoreFlag
|
enum TScoreFlag
|
||||||
{
|
{
|
||||||
HpFlag= (1<<SCORES::hit_points),
|
ChaScore1Flag= (1<<SCORES::cha_score1),
|
||||||
SapFlag= (1<<SCORES::sap),
|
ChaScore3Flag= (1<<SCORES::cha_score3),
|
||||||
StaFlag= (1<<SCORES::stamina),
|
ChaScore2Flag= (1<<SCORES::cha_score2),
|
||||||
FocusFlag= (1<<SCORES::focus)
|
ChaScore4Flag= (1<<SCORES::cha_score4)
|
||||||
};
|
};
|
||||||
|
|
||||||
// Bar Info
|
// Bar Info
|
||||||
|
@ -132,7 +132,7 @@ public:
|
||||||
|
|
||||||
/** called either by VP or DB receive. NB: no-op if the dataSetId was not added through any of preceding fct
|
/** called either by VP or DB receive. NB: no-op if the dataSetId was not added through any of preceding fct
|
||||||
* \param serverTick the server date validity of this info (if too old, skiped)
|
* \param serverTick the server date validity of this info (if too old, skiped)
|
||||||
* \param scoreFlags an ORed of TScoreFlag. if not set, the value is not relevant (eg: Team DB don't precise Focus)
|
* \param scoreFlags an ORed of TScoreFlag. if not set, the value is not relevant (eg: Team DB don't precise ChaScore4)
|
||||||
*/
|
*/
|
||||||
void updateBars(uint dataSetId, CBarInfo barInfo, NLMISC::TGameCycle serverTick, uint scoreFlags);
|
void updateBars(uint dataSetId, CBarInfo barInfo, NLMISC::TGameCycle serverTick, uint scoreFlags);
|
||||||
|
|
||||||
|
@ -149,15 +149,15 @@ public:
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* For Interface Team, Target, and Animal, values are updated in the database:
|
* For Interface Team, Target, and Animal, values are updated in the database:
|
||||||
* UI:VARIABLES:BARS:TEAM:i:HP
|
* UI:VARIABLES:BARS:TEAM:i:ChaScore1
|
||||||
* UI:VARIABLES:BARS:ANIMAL:i:HP
|
* UI:VARIABLES:BARS:ANIMAL:i:ChaScore1
|
||||||
* UI:VARIABLES:BARS:TARGET:HP
|
* UI:VARIABLES:BARS:TARGET:ChaScore1
|
||||||
* They are updated on a updateBars(), addxxx() or delxxxx()
|
* They are updated on a updateBars(), addxxx() or delxxxx()
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/// Special Message to set the current HP/SAP/STA/FOCUS for the user.
|
/// Special Message to set the current ChaScore1/ChaScore3/ChaScore2/ChaScore4 for the user.
|
||||||
void setupUserBarInfo(uint8 msgNumber, sint32 hp, sint32 sap, sint32 sta, sint32 focus);
|
void setupUserBarInfo(uint8 msgNumber, sint32 ChaScore1, sint32 ChaScore3, sint32 ChaScore2, sint32 ChaScore4);
|
||||||
/// From last setuped user HP/SAP/STA/FOCUS, and current database MAX, setup the Bars for the user (slot 0) entry
|
/// From last setuped user ChaScore1/ChaScore3/ChaScore2/ChaScore4, and current database MAX, setup the Bars for the user (slot 0) entry
|
||||||
void updateUserBars();
|
void updateUserBars();
|
||||||
|
|
||||||
sint32 getUserScore(SCORES::TScores score);
|
sint32 getUserScore(SCORES::TScores score);
|
||||||
|
@ -231,7 +231,7 @@ private:
|
||||||
void clear();
|
void clear();
|
||||||
// connect
|
// connect
|
||||||
void connectDB(const std::string &baseDBin, const std::string &baseDBout, const std::string &presentDB,
|
void connectDB(const std::string &baseDBin, const std::string &baseDBout, const std::string &presentDB,
|
||||||
const std::string &hpDB, const std::string &sapDB, const std::string &staDB, const std::string &focusDB);
|
const std::string &ChaScore1DB, const std::string &ChaScore3DB, const std::string &ChaScore2DB, const std::string &ChaScore4DB);
|
||||||
void resetDB();
|
void resetDB();
|
||||||
// flush the value to the DB (only values linked)
|
// flush the value to the DB (only values linked)
|
||||||
void flushDBOut();
|
void flushDBOut();
|
||||||
|
|
|
@ -135,49 +135,49 @@ int CDBCtrlSheet::luaGetDraggedSheet(CLuaState &ls)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
int CDBCtrlSheet::luaGetHpBuff(CLuaState &ls)
|
int CDBCtrlSheet::luaGetChaScore1Buff(CLuaState &ls)
|
||||||
{
|
{
|
||||||
CDBCtrlSheet *ctrlSheet = const_cast<CDBCtrlSheet*>(this);
|
CDBCtrlSheet *ctrlSheet = const_cast<CDBCtrlSheet*>(this);
|
||||||
uint32 itemSlotId= getInventory().getItemSlotId(ctrlSheet);
|
uint32 itemSlotId= getInventory().getItemSlotId(ctrlSheet);
|
||||||
CClientItemInfo itemInfo = getInventory().getItemInfo(itemSlotId);
|
CClientItemInfo itemInfo = getInventory().getItemInfo(itemSlotId);
|
||||||
|
|
||||||
ls.push(itemInfo.HpBuff);
|
ls.push(itemInfo.ChaScore1Buff);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
int CDBCtrlSheet::luaGetSapBuff(CLuaState &ls)
|
int CDBCtrlSheet::luaGetChaScore3Buff(CLuaState &ls)
|
||||||
{
|
{
|
||||||
CDBCtrlSheet *ctrlSheet = const_cast<CDBCtrlSheet*>(this);
|
CDBCtrlSheet *ctrlSheet = const_cast<CDBCtrlSheet*>(this);
|
||||||
uint32 itemSlotId= getInventory().getItemSlotId(ctrlSheet);
|
uint32 itemSlotId= getInventory().getItemSlotId(ctrlSheet);
|
||||||
CClientItemInfo itemInfo = getInventory().getItemInfo(itemSlotId);
|
CClientItemInfo itemInfo = getInventory().getItemInfo(itemSlotId);
|
||||||
|
|
||||||
ls.push(itemInfo.SapBuff);
|
ls.push(itemInfo.ChaScore3Buff);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
int CDBCtrlSheet::luaGetFocusBuff(CLuaState &ls)
|
int CDBCtrlSheet::luaGetChaScore4Buff(CLuaState &ls)
|
||||||
{
|
{
|
||||||
CDBCtrlSheet *ctrlSheet = const_cast<CDBCtrlSheet*>(this);
|
CDBCtrlSheet *ctrlSheet = const_cast<CDBCtrlSheet*>(this);
|
||||||
uint32 itemSlotId= getInventory().getItemSlotId(ctrlSheet);
|
uint32 itemSlotId= getInventory().getItemSlotId(ctrlSheet);
|
||||||
CClientItemInfo itemInfo = getInventory().getItemInfo(itemSlotId);
|
CClientItemInfo itemInfo = getInventory().getItemInfo(itemSlotId);
|
||||||
|
|
||||||
ls.push(itemInfo.FocusBuff);
|
ls.push(itemInfo.ChaScore4Buff);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
int CDBCtrlSheet::luaGetStaBuff(CLuaState &ls)
|
int CDBCtrlSheet::luaGetChaScore2Buff(CLuaState &ls)
|
||||||
{
|
{
|
||||||
CDBCtrlSheet *ctrlSheet = const_cast<CDBCtrlSheet*>(this);
|
CDBCtrlSheet *ctrlSheet = const_cast<CDBCtrlSheet*>(this);
|
||||||
uint32 itemSlotId= getInventory().getItemSlotId(ctrlSheet);
|
uint32 itemSlotId= getInventory().getItemSlotId(ctrlSheet);
|
||||||
CClientItemInfo itemInfo = getInventory().getItemInfo(itemSlotId);
|
CClientItemInfo itemInfo = getInventory().getItemInfo(itemSlotId);
|
||||||
|
|
||||||
ls.push(itemInfo.StaBuff);
|
ls.push(itemInfo.ChaScore2Buff);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -2428,17 +2428,17 @@ void CDBCtrlSheet::drawSheet (sint32 x, sint32 y, bool draging, bool showSelecti
|
||||||
sint costMalus;
|
sint costMalus;
|
||||||
CBarManager &bm = *CBarManager::getInstance();
|
CBarManager &bm = *CBarManager::getInstance();
|
||||||
//
|
//
|
||||||
pPM->getPhraseHpCost(phrase, totalActionMalus, cost, costMalus);
|
pPM->getPhraseChaScore1Cost(phrase, totalActionMalus, cost, costMalus);
|
||||||
if (cost > bm.getUserScore(SCORES::hit_points)) forceGrayed = true;
|
if (cost > bm.getUserScore(SCORES::cha_score1)) forceGrayed = true;
|
||||||
//
|
//
|
||||||
pPM->getPhraseSapCost(phrase, totalActionMalus, cost, costMalus);
|
pPM->getPhraseChaScore3Cost(phrase, totalActionMalus, cost, costMalus);
|
||||||
if (cost > bm.getUserScore(SCORES::sap)) forceGrayed = true;
|
if (cost > bm.getUserScore(SCORES::cha_score3)) forceGrayed = true;
|
||||||
//
|
//
|
||||||
pPM->getPhraseStaCost(phrase, totalActionMalus, cost, costMalus);
|
pPM->getPhraseChaScore2Cost(phrase, totalActionMalus, cost, costMalus);
|
||||||
if (cost > bm.getUserScore(SCORES::stamina)) forceGrayed = true;
|
if (cost > bm.getUserScore(SCORES::cha_score2)) forceGrayed = true;
|
||||||
//
|
//
|
||||||
pPM->getPhraseFocusCost(phrase, totalActionMalus, cost, costMalus);
|
pPM->getPhraseChaScore4Cost(phrase, totalActionMalus, cost, costMalus);
|
||||||
if (cost > bm.getUserScore(SCORES::focus)) forceGrayed = true;
|
if (cost > bm.getUserScore(SCORES::cha_score4)) forceGrayed = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -280,10 +280,10 @@ public:
|
||||||
REFLECT_STRING ("on_can_drop", getActionOnCanDrop, setActionOnCanDrop);
|
REFLECT_STRING ("on_can_drop", getActionOnCanDrop, setActionOnCanDrop);
|
||||||
REFLECT_STRING ("on_can_drop_params", getParamsOnCanDrop, setParamsOnCanDrop);
|
REFLECT_STRING ("on_can_drop_params", getParamsOnCanDrop, setParamsOnCanDrop);
|
||||||
REFLECT_LUA_METHOD("getDraggedSheet", luaGetDraggedSheet)
|
REFLECT_LUA_METHOD("getDraggedSheet", luaGetDraggedSheet)
|
||||||
REFLECT_LUA_METHOD("getHpBuff", luaGetHpBuff)
|
REFLECT_LUA_METHOD("getChaScore1Buff", luaGetChaScore1Buff)
|
||||||
REFLECT_LUA_METHOD("getSapBuff", luaGetSapBuff)
|
REFLECT_LUA_METHOD("getChaScore3Buff", luaGetChaScore3Buff)
|
||||||
REFLECT_LUA_METHOD("getFocusBuff", luaGetFocusBuff)
|
REFLECT_LUA_METHOD("getChaScore4Buff", luaGetChaScore4Buff)
|
||||||
REFLECT_LUA_METHOD("getStaBuff", luaGetStaBuff)
|
REFLECT_LUA_METHOD("getChaScore2Buff", luaGetChaScore2Buff)
|
||||||
REFLECT_LUA_METHOD("getName", luaGetName)
|
REFLECT_LUA_METHOD("getName", luaGetName)
|
||||||
REFLECT_LUA_METHOD("getCreatorName", luaGetCreatorName)
|
REFLECT_LUA_METHOD("getCreatorName", luaGetCreatorName)
|
||||||
REFLECT_LUA_METHOD("waitInfo", luaWaitInfo)
|
REFLECT_LUA_METHOD("waitInfo", luaWaitInfo)
|
||||||
|
@ -291,10 +291,10 @@ public:
|
||||||
REFLECT_EXPORT_END
|
REFLECT_EXPORT_END
|
||||||
|
|
||||||
int luaGetDraggedSheet(CLuaState &ls);
|
int luaGetDraggedSheet(CLuaState &ls);
|
||||||
int luaGetHpBuff(CLuaState &ls);
|
int luaGetChaScore1Buff(CLuaState &ls);
|
||||||
int luaGetSapBuff(CLuaState &ls);
|
int luaGetChaScore3Buff(CLuaState &ls);
|
||||||
int luaGetFocusBuff(CLuaState &ls);
|
int luaGetChaScore4Buff(CLuaState &ls);
|
||||||
int luaGetStaBuff(CLuaState &ls);
|
int luaGetChaScore2Buff(CLuaState &ls);
|
||||||
int luaGetName(CLuaState &ls);
|
int luaGetName(CLuaState &ls);
|
||||||
int luaGetCreatorName(CLuaState &ls);
|
int luaGetCreatorName(CLuaState &ls);
|
||||||
int luaWaitInfo(CLuaState &ls);
|
int luaWaitInfo(CLuaState &ls);
|
||||||
|
|
|
@ -59,10 +59,10 @@ public:
|
||||||
inline NLMISC::CCDBNodeLeaf *getTitle() { return _Title ? (&*_Title) : &*(_Title = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "TITLE")); }
|
inline NLMISC::CCDBNodeLeaf *getTitle() { return _Title ? (&*_Title) : &*(_Title = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "TITLE")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getRPTags() { return _RPTags ? (&*_RPTags) : &*(_RPTags = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "RPTAGS")); }
|
inline NLMISC::CCDBNodeLeaf *getRPTags() { return _RPTags ? (&*_RPTags) : &*(_RPTags = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "RPTAGS")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getGuildName() { return _GuildName ? (&*_GuildName) : &*(_GuildName = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "GUILD_NAME")); }
|
inline NLMISC::CCDBNodeLeaf *getGuildName() { return _GuildName ? (&*_GuildName) : &*(_GuildName = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "GUILD_NAME")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getHP() { return _HP ? (&*_HP) : &*(_HP = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "HP")); }
|
inline NLMISC::CCDBNodeLeaf *getChaScore1() { return _ChaScore1 ? (&*_ChaScore1) : &*(_ChaScore1 = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "ChaScore1")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getSta() { return _Sta ? (&*_Sta) : &*(_Sta = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "STA")); }
|
inline NLMISC::CCDBNodeLeaf *getChaScore2() { return _ChaScore2 ? (&*_ChaScore2) : &*(_ChaScore2 = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "ChaScore2")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getSap() { return _Sap ? (&*_Sap) : &*(_Sap = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "SAP")); }
|
inline NLMISC::CCDBNodeLeaf *getChaScore3() { return _ChaScore3 ? (&*_ChaScore3) : &*(_ChaScore3 = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "ChaScore3")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getFocus() { return _Focus ? (&*_Focus) : &*(_Focus = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "FOCUS")); }
|
inline NLMISC::CCDBNodeLeaf *getChaScore4() { return _ChaScore4 ? (&*_ChaScore4) : &*(_ChaScore4 = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "ChaScore4")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getAction() { return _Action ? (&*_Action) : &*(_Action = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "ACTION")); }
|
inline NLMISC::CCDBNodeLeaf *getAction() { return _Action ? (&*_Action) : &*(_Action = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "ACTION")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getMessages() { return _Messages ? (&*_Messages) : &*(_Messages = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "MESSAGES")); }
|
inline NLMISC::CCDBNodeLeaf *getMessages() { return _Messages ? (&*_Messages) : &*(_Messages = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "MESSAGES")); }
|
||||||
inline NLMISC::CCDBNodeLeaf *getPvPLogo() { return _PvPLogo ? (&*_PvPLogo) : &*(_PvPLogo = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "PVP_LOGO")); }
|
inline NLMISC::CCDBNodeLeaf *getPvPLogo() { return _PvPLogo ? (&*_PvPLogo) : &*(_PvPLogo = NLGUI::CDBManager::getInstance()->getDbProp(_DBPrefix + "PVP_LOGO")); }
|
||||||
|
@ -77,10 +77,10 @@ private:
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Title;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Title;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _RPTags;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _RPTags;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _GuildName;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _GuildName;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _HP;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _ChaScore1;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Sta;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _ChaScore2;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Sap;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _ChaScore3;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Focus;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _ChaScore4;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Action;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Action;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Messages;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _Messages;
|
||||||
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _PvPLogo;
|
NLMISC::CRefPtr<NLMISC::CCDBNodeLeaf> _PvPLogo;
|
||||||
|
@ -150,7 +150,7 @@ CRGBA CGroupInSceneUserInfo::BarColor[NumBars]=
|
||||||
CRGBA(255, 255, 255),
|
CRGBA(255, 255, 255),
|
||||||
};
|
};
|
||||||
|
|
||||||
CRGBA CGroupInSceneUserInfo::BarColorHPNegative = CRGBA(127, 32, 0);
|
CRGBA CGroupInSceneUserInfo::BarColorChaScore1Negative = CRGBA(127, 32, 0);
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
|
|
||||||
|
@ -227,7 +227,7 @@ CGroupInSceneUserInfo *CGroupInSceneUserInfo::build (CEntityCL *entity)
|
||||||
forageSourceBarDisplayed = (entity->slot() == UserEntity->selection());
|
forageSourceBarDisplayed = (entity->slot() == UserEntity->selection());
|
||||||
bars[Time] = forageSourceBarDisplayed;
|
bars[Time] = forageSourceBarDisplayed;
|
||||||
bars[Amount] = forageSourceBarDisplayed;
|
bars[Amount] = forageSourceBarDisplayed;
|
||||||
//bool displayExtractingParams = true; //forageSource->isExtractionInProgress() /*&& NLGUI::CDBManager::getInstance()->getDbProp(dbEntry+"HP")*/;
|
//bool displayExtractingParams = true; //forageSource->isExtractionInProgress() /*&& NLGUI::CDBManager::getInstance()->getDbProp(dbEntry+"ChaScore1")*/;
|
||||||
bars[Life] = forageSourceBarDisplayed;//displayExtractingParams;
|
bars[Life] = forageSourceBarDisplayed;//displayExtractingParams;
|
||||||
bars[Danger] = forageSourceBarDisplayed;//displayExtractingParams;
|
bars[Danger] = forageSourceBarDisplayed;//displayExtractingParams;
|
||||||
bars[Spawn] = forageSourceBarDisplayed;//displayExtractingParams;
|
bars[Spawn] = forageSourceBarDisplayed;//displayExtractingParams;
|
||||||
|
@ -862,18 +862,18 @@ void CGroupInSceneUserInfo::getBarSettings( CInterfaceManager* pIM, bool isUser,
|
||||||
// if currently is edition mode, then bars are not displayed
|
// if currently is edition mode, then bars are not displayed
|
||||||
if (ClientCfg.R2EDEnabled && R2::isEditionCurrent())
|
if (ClientCfg.R2EDEnabled && R2::isEditionCurrent())
|
||||||
{
|
{
|
||||||
bars[HP] = false;
|
bars[ChaScore1] = false;
|
||||||
bars[SAP] = false;
|
bars[ChaScore3] = false;
|
||||||
bars[STA] = false;
|
bars[ChaScore2] = false;
|
||||||
bars[Focus] = false;
|
bars[ChaScore4] = false;
|
||||||
bars[Action] = false;
|
bars[Action] = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
bars[HP] = _ConfigSaveInsceneDB[dbEntry].getHP()->getValueBool();
|
bars[ChaScore1] = _ConfigSaveInsceneDB[dbEntry].getChaScore1()->getValueBool();
|
||||||
bars[SAP] = (isUser || isFriend) && (isUser || isPlayer) && _ConfigSaveInsceneDB[dbEntry].getSap()->getValueBool();
|
bars[ChaScore3] = (isUser || isFriend) && (isUser || isPlayer) && _ConfigSaveInsceneDB[dbEntry].getChaScore3()->getValueBool();
|
||||||
bars[STA] = (isUser || isFriend) && (isUser || isPlayer) && _ConfigSaveInsceneDB[dbEntry].getSta()->getValueBool();
|
bars[ChaScore2] = (isUser || isFriend) && (isUser || isPlayer) && _ConfigSaveInsceneDB[dbEntry].getChaScore2()->getValueBool();
|
||||||
bars[Focus] = (isUser || isFriend) && (isUser || isPlayer) && _ConfigSaveInsceneDB[dbEntry].getFocus()->getValueBool();
|
bars[ChaScore4] = (isUser || isFriend) && (isUser || isPlayer) && _ConfigSaveInsceneDB[dbEntry].getChaScore4()->getValueBool();
|
||||||
bars[Action] = (isUser) && _ConfigSaveInsceneDB[dbEntry].getAction()->getValueBool();
|
bars[Action] = (isUser) && _ConfigSaveInsceneDB[dbEntry].getAction()->getValueBool();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1059,28 +1059,28 @@ void CGroupInSceneUserInfo::updateDynamicData ()
|
||||||
// NB: forage don't use CBarManager for 2 reasons: useless (forage bars exist only through VP),
|
// NB: forage don't use CBarManager for 2 reasons: useless (forage bars exist only through VP),
|
||||||
// and complicated since updated at each frame on client (because of smooth transition code)
|
// and complicated since updated at each frame on client (because of smooth transition code)
|
||||||
CForageSourceCL *forageSource = static_cast<CForageSourceCL*>(_Entity);
|
CForageSourceCL *forageSource = static_cast<CForageSourceCL*>(_Entity);
|
||||||
barInfo.Score[SCORES::hit_points]= forageSource->getTimeBar(); // Map TimeBar to HP
|
barInfo.Score[SCORES::cha_score1]= forageSource->getTimeBar(); // Map TimeBar to ChaScore1
|
||||||
barInfo.Score[SCORES::sap]= forageSource->getQuantityBar(); // Map QuantityBar to SAP
|
barInfo.Score[SCORES::cha_score3]= forageSource->getQuantityBar(); // Map QuantityBar to ChaScore3
|
||||||
barInfo.Score[SCORES::stamina]= forageSource->getDBar(); // Map D Bar to Sta
|
barInfo.Score[SCORES::cha_score2]= forageSource->getDBar(); // Map D Bar to ChaScore2
|
||||||
barInfo.Score[SCORES::focus]= forageSource->getEBar(); // Map E Bar to Focus
|
barInfo.Score[SCORES::cha_score4]= forageSource->getEBar(); // Map E Bar to ChaScore4
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set the bar
|
// Set the bar
|
||||||
if (_Bars[HP])
|
if (_Bars[ChaScore1])
|
||||||
{
|
{
|
||||||
sint value = (sint)_BatLength * barInfo.Score[SCORES::hit_points] / RZ_BARS_LENGTH;
|
sint value = (sint)_BatLength * barInfo.Score[SCORES::cha_score1] / RZ_BARS_LENGTH;
|
||||||
if ( ! _Entity->isForageSource() )
|
if ( ! _Entity->isForageSource() )
|
||||||
{
|
{
|
||||||
if (value < 0)
|
if (value < 0)
|
||||||
{
|
{
|
||||||
value = -value;
|
value = -value;
|
||||||
_Bars[HP]->setColorRGBA(BarColorHPNegative);
|
_Bars[ChaScore1]->setColorRGBA(BarColorChaScore1Negative);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_Bars[HP]->setColorRGBA(BarColor[HP]);
|
_Bars[ChaScore1]->setColorRGBA(BarColor[ChaScore1]);
|
||||||
}
|
}
|
||||||
// if dead creature, force the hp to 0
|
// if dead creature, force the ChaScore1 to 0
|
||||||
if( _Entity->mode() == MBEHAV::DEATH && !_Entity->isPlayer() && !_Entity->isUser())
|
if( _Entity->mode() == MBEHAV::DEATH && !_Entity->isPlayer() && !_Entity->isUser())
|
||||||
{
|
{
|
||||||
if( value > 0 )
|
if( value > 0 )
|
||||||
|
@ -1095,22 +1095,22 @@ void CGroupInSceneUserInfo::updateDynamicData ()
|
||||||
CForageSourceCL *forageSource = static_cast<CForageSourceCL*>(_Entity);
|
CForageSourceCL *forageSource = static_cast<CForageSourceCL*>(_Entity);
|
||||||
if ( forageSource->isInExtraTime() )
|
if ( forageSource->isInExtraTime() )
|
||||||
{
|
{
|
||||||
_Bars[HP]->setColorRGBA(
|
_Bars[ChaScore1]->setColorRGBA(
|
||||||
forageSource->isInProspectionExtraTime() ?
|
forageSource->isInProspectionExtraTime() ?
|
||||||
CRGBA( 255, 0, 0 ) : // red
|
CRGBA( 255, 0, 0 ) : // red
|
||||||
CRGBA( 235, 144, 0 ) ); // orange
|
CRGBA( 235, 144, 0 ) ); // orange
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
clamp (value, 0, (sint)_BatLength);
|
clamp (value, 0, (sint)_BatLength);
|
||||||
if(_Bars[HP]->getW() != value)
|
if(_Bars[ChaScore1]->getW() != value)
|
||||||
_Bars[HP]->setWAndInvalidateCoords (value);
|
_Bars[ChaScore1]->setWAndInvalidateCoords (value);
|
||||||
}
|
}
|
||||||
if (_Bars[SAP])
|
if (_Bars[ChaScore3])
|
||||||
{
|
{
|
||||||
int value = _BatLength * barInfo.Score[SCORES::sap] / RZ_BARS_LENGTH;
|
int value = _BatLength * barInfo.Score[SCORES::cha_score3] / RZ_BARS_LENGTH;
|
||||||
clamp (value, 0, (int)_BatLength);
|
clamp (value, 0, (int)_BatLength);
|
||||||
if(_Bars[SAP]->getW() != value)
|
if(_Bars[ChaScore3]->getW() != value)
|
||||||
_Bars[SAP]->setWAndInvalidateCoords (value);
|
_Bars[ChaScore3]->setWAndInvalidateCoords (value);
|
||||||
|
|
||||||
// Forage source quantity bar: update contents value in tooltip
|
// Forage source quantity bar: update contents value in tooltip
|
||||||
if ( _Entity->isForageSource() )
|
if ( _Entity->isForageSource() )
|
||||||
|
@ -1126,27 +1126,27 @@ void CGroupInSceneUserInfo::updateDynamicData ()
|
||||||
toolTip2->setDefaultContextHelp( txt );
|
toolTip2->setDefaultContextHelp( txt );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (_Bars[STA])
|
if (_Bars[ChaScore2])
|
||||||
{
|
{
|
||||||
int value = _BatLength * barInfo.Score[SCORES::stamina] / RZ_BARS_LENGTH;
|
int value = _BatLength * barInfo.Score[SCORES::cha_score2] / RZ_BARS_LENGTH;
|
||||||
clamp (value, 0, (int)_BatLength);
|
clamp (value, 0, (int)_BatLength);
|
||||||
if(_Bars[STA]->getW() != value)
|
if(_Bars[ChaScore2]->getW() != value)
|
||||||
{
|
{
|
||||||
// Forage source life bar: update danger colour
|
// Forage source life bar: update danger colour
|
||||||
if ( _Entity->isForageSource() )
|
if ( _Entity->isForageSource() )
|
||||||
{
|
{
|
||||||
CRGBA color = _Bars[STA]->getColorRGBA();
|
CRGBA color = _Bars[ChaScore2]->getColorRGBA();
|
||||||
color.blendFromuiRGBOnly( CRGBA( 255, 127, 127 ), CRGBA( 255, 0, 0 ), (RZ_BARS_LENGTH - barInfo.Score[SCORES::stamina]) * (256/RZ_BARS_LENGTH) );
|
color.blendFromuiRGBOnly( CRGBA( 255, 127, 127 ), CRGBA( 255, 0, 0 ), (RZ_BARS_LENGTH - barInfo.Score[SCORES::cha_score2]) * (256/RZ_BARS_LENGTH) );
|
||||||
_Bars[STA]->setColorRGBA( color );
|
_Bars[ChaScore2]->setColorRGBA( color );
|
||||||
}
|
}
|
||||||
_Bars[STA]->setWAndInvalidateCoords (value);
|
_Bars[ChaScore2]->setWAndInvalidateCoords (value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (_Bars[Focus])
|
if (_Bars[ChaScore4])
|
||||||
{
|
{
|
||||||
int value = _BatLength * barInfo.Score[SCORES::focus] / RZ_BARS_LENGTH;
|
int value = _BatLength * barInfo.Score[SCORES::cha_score4] / RZ_BARS_LENGTH;
|
||||||
clamp (value, 0, (int)_BatLength);
|
clamp (value, 0, (int)_BatLength);
|
||||||
if(_Bars[Focus]->getW() != value)
|
if(_Bars[ChaScore4]->getW() != value)
|
||||||
{
|
{
|
||||||
// Forage source life bar: update danger colour
|
// Forage source life bar: update danger colour
|
||||||
if ( _Entity->isForageSource() )
|
if ( _Entity->isForageSource() )
|
||||||
|
@ -1154,16 +1154,16 @@ void CGroupInSceneUserInfo::updateDynamicData ()
|
||||||
CForageSourceCL *forageSource = static_cast<CForageSourceCL*>(_Entity);
|
CForageSourceCL *forageSource = static_cast<CForageSourceCL*>(_Entity);
|
||||||
if ( forageSource->isSafe() )
|
if ( forageSource->isSafe() )
|
||||||
{
|
{
|
||||||
_Bars[Focus]->setColorRGBA( CForageSourceCL::SafeSourceColor );
|
_Bars[ChaScore4]->setColorRGBA( CForageSourceCL::SafeSourceColor );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
CRGBA color = _Bars[Focus]->getColorRGBA();
|
CRGBA color = _Bars[ChaScore4]->getColorRGBA();
|
||||||
color.blendFromuiRGBOnly( CRGBA( 255, 175, 0 ), CRGBA( 255, 0, 0 ), (RZ_BARS_LENGTH - barInfo.Score[SCORES::focus]) * (256/RZ_BARS_LENGTH) );
|
color.blendFromuiRGBOnly( CRGBA( 255, 175, 0 ), CRGBA( 255, 0, 0 ), (RZ_BARS_LENGTH - barInfo.Score[SCORES::cha_score4]) * (256/RZ_BARS_LENGTH) );
|
||||||
_Bars[Focus]->setColorRGBA( color );
|
_Bars[ChaScore4]->setColorRGBA( color );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_Bars[Focus]->setWAndInvalidateCoords (value);
|
_Bars[ChaScore4]->setWAndInvalidateCoords (value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -63,10 +63,10 @@ protected:
|
||||||
enum TBar
|
enum TBar
|
||||||
{
|
{
|
||||||
// Living entity Forage source
|
// Living entity Forage source
|
||||||
HP = 0, Time = HP, // If making changes to this enum, please update
|
ChaScore1 = 0, Time = ChaScore1, // If making changes to this enum, please update
|
||||||
SAP, Amount = SAP, // CForageSourceCL::updateVisualPropertyBars() and
|
ChaScore3, Amount = ChaScore3, // CForageSourceCL::updateVisualPropertyBars() and
|
||||||
STA, Life = STA, // updateVisiblePostPos() because the HP/SAP/STA
|
ChaScore2, Life = ChaScore2, // updateVisiblePostPos() because the ChaScore1/ChaScore3/ChaScore2
|
||||||
Focus, Danger = Focus, // properties are *not* in an array in CEntityCL.
|
ChaScore4, Danger = ChaScore4, // properties are *not* in an array in CEntityCL.
|
||||||
Action, Spawn = Action,
|
Action, Spawn = Action,
|
||||||
NumBars
|
NumBars
|
||||||
};
|
};
|
||||||
|
@ -90,7 +90,7 @@ protected:
|
||||||
class CViewBitmap *_MissionTarget;
|
class CViewBitmap *_MissionTarget;
|
||||||
static uint _BatLength;
|
static uint _BatLength;
|
||||||
static NLMISC::CRGBA BarColor[NumBars];
|
static NLMISC::CRGBA BarColor[NumBars];
|
||||||
static NLMISC::CRGBA BarColorHPNegative;
|
static NLMISC::CRGBA BarColorChaScore1Negative;
|
||||||
|
|
||||||
// Node user leaf
|
// Node user leaf
|
||||||
static NLMISC::CCDBNodeLeaf *_Value;
|
static NLMISC::CCDBNodeLeaf *_Value;
|
||||||
|
|
|
@ -1004,7 +1004,7 @@ void CInterfaceManager::initInGame()
|
||||||
// Init FlyingText manager
|
// Init FlyingText manager
|
||||||
FlyingTextManager.initInGame();
|
FlyingTextManager.initInGame();
|
||||||
|
|
||||||
// Init Bar Manager (HP, SAP etc... Bars)
|
// Init Bar Manager (ChaScore1, ChaScore2 etc... Bars)
|
||||||
CBarManager::getInstance()->initInGame();
|
CBarManager::getInstance()->initInGame();
|
||||||
|
|
||||||
// Init interface props linked to client time
|
// Init interface props linked to client time
|
||||||
|
@ -1275,7 +1275,7 @@ void CInterfaceManager::uninitInGame0 ()
|
||||||
void CInterfaceManager::uninitInGame1 ()
|
void CInterfaceManager::uninitInGame1 ()
|
||||||
{
|
{
|
||||||
|
|
||||||
// release Bar Manager (HP, SAP etc... Bars)
|
// release Bar Manager (ChaScore1, ChaScore2 etc... Bars)
|
||||||
CBarManager::getInstance()->releaseInGame();
|
CBarManager::getInstance()->releaseInGame();
|
||||||
|
|
||||||
// release FlyingTextManager
|
// release FlyingTextManager
|
||||||
|
@ -1833,8 +1833,7 @@ bool CInterfaceManager::saveConfig (const string &filename)
|
||||||
|
|
||||||
COFile f;
|
COFile f;
|
||||||
|
|
||||||
// using temporary file, so no f.close() unless its a success
|
if (!f.open(filename)) return false;
|
||||||
if (!f.open(filename, false, false, true)) return false;
|
|
||||||
|
|
||||||
CInterfaceConfig ic;
|
CInterfaceConfig ic;
|
||||||
|
|
||||||
|
@ -1881,6 +1880,7 @@ bool CInterfaceManager::saveConfig (const string &filename)
|
||||||
{
|
{
|
||||||
nlwarning("Config saving failed");
|
nlwarning("Config saving failed");
|
||||||
// couldn't save result so do not continue
|
// couldn't save result so do not continue
|
||||||
|
f.close();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1936,14 +1936,14 @@ bool CInterfaceManager::saveConfig (const string &filename)
|
||||||
nlwarning("Bad user dyn chat saving");
|
nlwarning("Bad user dyn chat saving");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
f.close();
|
|
||||||
}
|
}
|
||||||
catch(const NLMISC::EStream &)
|
catch(const NLMISC::EStream &)
|
||||||
{
|
{
|
||||||
|
f.close();
|
||||||
nlwarning("Config saving failed.");
|
nlwarning("Config saving failed.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
f.close();
|
||||||
|
|
||||||
ContinentMngr.serialFOWMaps();
|
ContinentMngr.serialFOWMaps();
|
||||||
|
|
||||||
|
@ -2652,8 +2652,7 @@ bool CInterfaceManager::saveKeys(const std::string &filename)
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
COFile file;
|
COFile file;
|
||||||
// using temporary file, so no file.close() unless its a success
|
if (file.open (filename))
|
||||||
if (file.open (filename, false, false, true))
|
|
||||||
{
|
{
|
||||||
COXml xmlStream;
|
COXml xmlStream;
|
||||||
xmlStream.init (&file);
|
xmlStream.init (&file);
|
||||||
|
@ -2683,7 +2682,8 @@ bool CInterfaceManager::saveKeys(const std::string &filename)
|
||||||
}
|
}
|
||||||
catch (const Exception &e)
|
catch (const Exception &e)
|
||||||
{
|
{
|
||||||
nlwarning ("Error while writing the file %s : %s.", filename.c_str(), e.what ());
|
nlwarning ("Error while writing the file %s : %s. Remove it.", filename.c_str(), e.what ());
|
||||||
|
CFile::deleteFile(filename);
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -2711,7 +2711,7 @@ void CInterfaceManager::log(const ucstring &str, const std::string &cat)
|
||||||
{
|
{
|
||||||
// Open file with the name of the player
|
// Open file with the name of the player
|
||||||
const string fileName= "save/log_" + PlayerSelectedFileName + ".txt";
|
const string fileName= "save/log_" + PlayerSelectedFileName + ".txt";
|
||||||
FILE *f = nlfopen(fileName, "at");
|
FILE *f = fopen(fileName.c_str(), "at");
|
||||||
if (f != NULL)
|
if (f != NULL)
|
||||||
{
|
{
|
||||||
const string finalString = string(NLMISC::IDisplayer::dateToHumanString()) + " (" + NLMISC::toUpper(cat) + ") * " + str.toUtf8();
|
const string finalString = string(NLMISC::IDisplayer::dateToHumanString()) + " (" + NLMISC::toUpper(cat) + ") * " + str.toUtf8();
|
||||||
|
|
|
@ -87,7 +87,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
effects += "\n";
|
effects += "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( name == "SP_LIFE_AURA" )
|
if ( name == "SP_ChaScore1_AURA" )
|
||||||
{
|
{
|
||||||
|
|
||||||
uint16 regenMod;
|
uint16 regenMod;
|
||||||
|
@ -101,7 +101,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
uint32 userDisableTime;
|
uint32 userDisableTime;
|
||||||
fromString(params[4].c_str(), userDisableTime);
|
fromString(params[4].c_str(), userDisableTime);
|
||||||
|
|
||||||
ucstring result = CI18N::get("uiItemConsumableEffectLifeAura");
|
ucstring result = CI18N::get("uiItemConsumableEffectChaScore1Aura");
|
||||||
strFindReplace(result, "%modifier", toString(regenMod));
|
strFindReplace(result, "%modifier", toString(regenMod));
|
||||||
strFindReplace(result, "%minutes", toString(duration/60));
|
strFindReplace(result, "%minutes", toString(duration/60));
|
||||||
strFindReplace(result, "%secondes", toString(duration%60));
|
strFindReplace(result, "%secondes", toString(duration%60));
|
||||||
|
@ -113,7 +113,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
effects += "\n";
|
effects += "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( name == "SP_LIFE_AURA2" )
|
if ( name == "SP_ChaScore1_AURA2" )
|
||||||
{
|
{
|
||||||
|
|
||||||
uint16 regenMod;
|
uint16 regenMod;
|
||||||
|
@ -128,7 +128,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
uint32 userDisableTime;
|
uint32 userDisableTime;
|
||||||
fromString(params[4].c_str(), userDisableTime);
|
fromString(params[4].c_str(), userDisableTime);
|
||||||
|
|
||||||
ucstring result = CI18N::get("uiItemConsumableEffectLifeAura");
|
ucstring result = CI18N::get("uiItemConsumableEffectChaScore1Aura");
|
||||||
strFindReplace(result, "%modifier", toString(bonus));
|
strFindReplace(result, "%modifier", toString(bonus));
|
||||||
strFindReplace(result, "%minutes", toString(duration/60));
|
strFindReplace(result, "%minutes", toString(duration/60));
|
||||||
strFindReplace(result, "%secondes", toString(duration%60));
|
strFindReplace(result, "%secondes", toString(duration%60));
|
||||||
|
@ -140,7 +140,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
effects += "\n";
|
effects += "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( name == "SP_STAMINA_AURA" )
|
if ( name == "SP_ChaScore2_AURA" )
|
||||||
{
|
{
|
||||||
|
|
||||||
uint16 regenMod;
|
uint16 regenMod;
|
||||||
|
@ -154,7 +154,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
uint32 userDisableTime;
|
uint32 userDisableTime;
|
||||||
fromString(params[4].c_str(), userDisableTime);
|
fromString(params[4].c_str(), userDisableTime);
|
||||||
|
|
||||||
ucstring result = CI18N::get("uiItemConsumableEffectStaminaAura");
|
ucstring result = CI18N::get("uiItemConsumableEffectChaScore2Aura");
|
||||||
strFindReplace(result, "%modifier", toString(regenMod));
|
strFindReplace(result, "%modifier", toString(regenMod));
|
||||||
strFindReplace(result, "%minutes", toString(duration/60));
|
strFindReplace(result, "%minutes", toString(duration/60));
|
||||||
strFindReplace(result, "%secondes", toString(duration%60));
|
strFindReplace(result, "%secondes", toString(duration%60));
|
||||||
|
@ -167,7 +167,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ( name == "SP_STAMINA_AURA2" )
|
if ( name == "SP_ChaScore2_AURA2" )
|
||||||
{
|
{
|
||||||
|
|
||||||
uint16 regenMod;
|
uint16 regenMod;
|
||||||
|
@ -182,7 +182,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
uint32 userDisableTime;
|
uint32 userDisableTime;
|
||||||
fromString(params[4].c_str(), userDisableTime);
|
fromString(params[4].c_str(), userDisableTime);
|
||||||
|
|
||||||
ucstring result = CI18N::get("uiItemConsumableEffectStaminaAura");
|
ucstring result = CI18N::get("uiItemConsumableEffectChaScore2Aura");
|
||||||
strFindReplace(result, "%modifier", toString(bonus));
|
strFindReplace(result, "%modifier", toString(bonus));
|
||||||
strFindReplace(result, "%minutes", toString(duration/60));
|
strFindReplace(result, "%minutes", toString(duration/60));
|
||||||
strFindReplace(result, "%secondes", toString(duration%60));
|
strFindReplace(result, "%secondes", toString(duration%60));
|
||||||
|
@ -194,7 +194,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
effects += "\n";
|
effects += "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( name == "SP_SAP_AURA" )
|
if ( name == "SP_ChaScore3_AURA" )
|
||||||
{
|
{
|
||||||
|
|
||||||
uint16 regenMod;
|
uint16 regenMod;
|
||||||
|
@ -208,7 +208,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
uint32 userDisableTime;
|
uint32 userDisableTime;
|
||||||
fromString(params[4].c_str(), userDisableTime);
|
fromString(params[4].c_str(), userDisableTime);
|
||||||
|
|
||||||
ucstring result = CI18N::get("uiItemConsumableEffectSapAura");
|
ucstring result = CI18N::get("uiItemConsumableEffectChaScore3Aura");
|
||||||
strFindReplace(result, "%modifier", toString(regenMod));
|
strFindReplace(result, "%modifier", toString(regenMod));
|
||||||
strFindReplace(result, "%minutes", toString(duration/60));
|
strFindReplace(result, "%minutes", toString(duration/60));
|
||||||
strFindReplace(result, "%secondes", toString(duration%60));
|
strFindReplace(result, "%secondes", toString(duration%60));
|
||||||
|
@ -220,7 +220,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
effects += "\n";
|
effects += "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( name == "SP_SAP_AURA2" )
|
if ( name == "SP_ChaScore3_AURA2" )
|
||||||
{
|
{
|
||||||
|
|
||||||
uint16 regenMod;
|
uint16 regenMod;
|
||||||
|
@ -235,7 +235,7 @@ void CItemConsumableEffectHelper::getItemConsumableEffectText(const CItemSheet *
|
||||||
uint32 userDisableTime;
|
uint32 userDisableTime;
|
||||||
fromString(params[4].c_str(), userDisableTime);
|
fromString(params[4].c_str(), userDisableTime);
|
||||||
|
|
||||||
ucstring result = CI18N::get("uiItemConsumableEffectSapAura");
|
ucstring result = CI18N::get("uiItemConsumableEffectChaScore3Aura");
|
||||||
strFindReplace(result, "%modifier", toString(bonus));
|
strFindReplace(result, "%modifier", toString(bonus));
|
||||||
strFindReplace(result, "%minutes", toString(duration/60));
|
strFindReplace(result, "%minutes", toString(duration/60));
|
||||||
strFindReplace(result, "%secondes", toString(duration%60));
|
strFindReplace(result, "%secondes", toString(duration%60));
|
||||||
|
|
|
@ -422,11 +422,11 @@ void CSBrickManager::compileBrickProperties()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get usual PropIds
|
// Get usual PropIds
|
||||||
HpPropId= getBrickPropId("hp");
|
ChaScore1PropId= getBrickPropId("ChaScore1");
|
||||||
SapPropId= getBrickPropId("sap");
|
ChaScore3PropId= getBrickPropId("ChaScore3");
|
||||||
StaPropId= getBrickPropId("sta");
|
ChaScore2PropId= getBrickPropId("ChaScore2");
|
||||||
StaWeightFactorId = getBrickPropId("sta_weight_factor");
|
ChaScore2WeightFactorId = getBrickPropId("ChaScore2_weight_factor");
|
||||||
FocusPropId= getBrickPropId("focus");
|
ChaScore4PropId= getBrickPropId("ChaScore4");
|
||||||
CastTimePropId= getBrickPropId("ma_casting_time");
|
CastTimePropId= getBrickPropId("ma_casting_time");
|
||||||
RangePropId= getBrickPropId("ma_range");
|
RangePropId= getBrickPropId("ma_range");
|
||||||
|
|
||||||
|
|
|
@ -128,11 +128,11 @@ public:
|
||||||
// get a prop Id from its name.
|
// get a prop Id from its name.
|
||||||
uint getBrickPropId(const std::string &name);
|
uint getBrickPropId(const std::string &name);
|
||||||
// Important Ids for properties (to compute cost, range etc...).
|
// Important Ids for properties (to compute cost, range etc...).
|
||||||
uint HpPropId;
|
uint ChaScore1PropId;
|
||||||
uint SapPropId;
|
uint ChaScore3PropId;
|
||||||
uint StaPropId;
|
uint ChaScore2PropId;
|
||||||
uint StaWeightFactorId;
|
uint ChaScore2WeightFactorId;
|
||||||
uint FocusPropId;
|
uint ChaScore4PropId;
|
||||||
uint CastTimePropId;
|
uint CastTimePropId;
|
||||||
uint RangePropId;
|
uint RangePropId;
|
||||||
// @}
|
// @}
|
||||||
|
|
|
@ -1135,19 +1135,19 @@ void CSPhraseManager::buildPhraseDesc(ucstring &text, const CSPhraseCom &phrase,
|
||||||
sint success= getPhraseSuccessRate(phrase);
|
sint success= getPhraseSuccessRate(phrase);
|
||||||
float castTime= 0, castTimeMalus= 0;
|
float castTime= 0, castTimeMalus= 0;
|
||||||
sint range= 0, rangeMalus= 0;
|
sint range= 0, rangeMalus= 0;
|
||||||
sint hpCost= 0, hpCostMalus= 0;
|
sint ChaScore1Cost= 0, ChaScore1CostMalus= 0;
|
||||||
sint enCost= 0, enCostMalus= 0;
|
sint enCost= 0, enCostMalus= 0;
|
||||||
|
|
||||||
getPhraseCastTime(phrase, totalActionMalus, castTime, castTimeMalus);
|
getPhraseCastTime(phrase, totalActionMalus, castTime, castTimeMalus);
|
||||||
getPhraseMagicRange(phrase, totalActionMalus, range, rangeMalus);
|
getPhraseMagicRange(phrase, totalActionMalus, range, rangeMalus);
|
||||||
getPhraseHpCost(phrase, totalActionMalus, hpCost, hpCostMalus);
|
getPhraseChaScore1Cost(phrase, totalActionMalus, ChaScore1Cost, ChaScore1CostMalus);
|
||||||
|
|
||||||
if(rootBrick->isCombat())
|
if(rootBrick->isCombat())
|
||||||
getPhraseStaCost(phrase, totalActionMalus, enCost, enCostMalus);
|
getPhraseChaScore2Cost(phrase, totalActionMalus, enCost, enCostMalus);
|
||||||
else if(rootBrick->isMagic())
|
else if(rootBrick->isMagic())
|
||||||
getPhraseSapCost(phrase, totalActionMalus, enCost, enCostMalus);
|
getPhraseChaScore3Cost(phrase, totalActionMalus, enCost, enCostMalus);
|
||||||
else
|
else
|
||||||
getPhraseFocusCost(phrase, totalActionMalus, enCost, enCostMalus);
|
getPhraseChaScore4Cost(phrase, totalActionMalus, enCost, enCostMalus);
|
||||||
|
|
||||||
sint32 successModifier = 0;
|
sint32 successModifier = 0;
|
||||||
CCDBNodeLeaf * nodeSM = NULL;
|
CCDBNodeLeaf * nodeSM = NULL;
|
||||||
|
@ -1198,7 +1198,7 @@ void CSPhraseManager::buildPhraseDesc(ucstring &text, const CSPhraseCom &phrase,
|
||||||
strFindReplace(text, "%success", toString(successStr));
|
strFindReplace(text, "%success", toString(successStr));
|
||||||
strFindReplace(text, "%duration", formatMalus(castTime, castTimeMalus) );
|
strFindReplace(text, "%duration", formatMalus(castTime, castTimeMalus) );
|
||||||
strFindReplace(text, "%energy_cost", formatMalus(enCost, enCostMalus) );
|
strFindReplace(text, "%energy_cost", formatMalus(enCost, enCostMalus) );
|
||||||
strFindReplace(text, "%hp_cost", formatMalus(hpCost, hpCostMalus) );
|
strFindReplace(text, "%ChaScore1_cost", formatMalus(ChaScore1Cost, ChaScore1CostMalus) );
|
||||||
// special range and "self"
|
// special range and "self"
|
||||||
if(range==0)
|
if(range==0)
|
||||||
strFindReplace(text, "%range", CI18N::get("uihelpPhraseRangeSelf"));
|
strFindReplace(text, "%range", CI18N::get("uihelpPhraseRangeSelf"));
|
||||||
|
@ -1461,38 +1461,38 @@ sint CSPhraseManager::getForageExtractionPhraseSuccessRate(const CSPhraseCom
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
void CSPhraseManager::getPhraseSapCost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus)
|
void CSPhraseManager::getPhraseChaScore3Cost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus)
|
||||||
{
|
{
|
||||||
CSBrickManager *pBM= CSBrickManager::getInstance();
|
CSBrickManager *pBM= CSBrickManager::getInstance();
|
||||||
cost= (sint)getPhraseSumBrickProp(phrase, pBM->SapPropId, true);
|
cost= (sint)getPhraseSumBrickProp(phrase, pBM->ChaScore3PropId, true);
|
||||||
// compute malus (positive)
|
// compute malus (positive)
|
||||||
costMalus= (cost * (totalActionMalus))/100;
|
costMalus= (cost * (totalActionMalus))/100;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
void CSPhraseManager::getPhraseStaCost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus)
|
void CSPhraseManager::getPhraseChaScore2Cost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus)
|
||||||
{
|
{
|
||||||
CSBrickManager *pBM= CSBrickManager::getInstance();
|
CSBrickManager *pBM= CSBrickManager::getInstance();
|
||||||
cost= (sint)getPhraseSumBrickProp(phrase, pBM->StaPropId, true);
|
cost= (sint)getPhraseSumBrickProp(phrase, pBM->ChaScore2PropId, true);
|
||||||
// TODO: combat special case
|
// TODO: combat special case
|
||||||
// compute malus (positive)
|
// compute malus (positive)
|
||||||
costMalus= (cost * (totalActionMalus))/100;
|
costMalus= (cost * (totalActionMalus))/100;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
void CSPhraseManager::getPhraseFocusCost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus)
|
void CSPhraseManager::getPhraseChaScore4Cost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus)
|
||||||
{
|
{
|
||||||
CSBrickManager *pBM= CSBrickManager::getInstance();
|
CSBrickManager *pBM= CSBrickManager::getInstance();
|
||||||
cost= (sint)getPhraseSumBrickProp(phrase, pBM->FocusPropId, true);
|
cost= (sint)getPhraseSumBrickProp(phrase, pBM->ChaScore4PropId, true);
|
||||||
// compute malus (positive)
|
// compute malus (positive)
|
||||||
costMalus= (cost * (totalActionMalus))/100;
|
costMalus= (cost * (totalActionMalus))/100;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
void CSPhraseManager::getPhraseHpCost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus)
|
void CSPhraseManager::getPhraseChaScore1Cost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus)
|
||||||
{
|
{
|
||||||
CSBrickManager *pBM= CSBrickManager::getInstance();
|
CSBrickManager *pBM= CSBrickManager::getInstance();
|
||||||
cost= (sint)getPhraseSumBrickProp(phrase, pBM->HpPropId, true);
|
cost= (sint)getPhraseSumBrickProp(phrase, pBM->ChaScore1PropId, true);
|
||||||
// compute malus (positive)
|
// compute malus (positive)
|
||||||
costMalus= (cost * (totalActionMalus))/100;
|
costMalus= (cost * (totalActionMalus))/100;
|
||||||
}
|
}
|
||||||
|
@ -1656,7 +1656,7 @@ float CSPhraseManager::getPhraseSumBrickProp(const CSPhraseCom &phrase, uint
|
||||||
else
|
else
|
||||||
sum+= brick->Properties[j].Value;
|
sum+= brick->Properties[j].Value;
|
||||||
}
|
}
|
||||||
else if(propId==CSBrickManager::getInstance()->StaPropId && brick->Properties[j].PropId==CSBrickManager::getInstance()->StaWeightFactorId)
|
else if(propId==CSBrickManager::getInstance()->ChaScore2PropId && brick->Properties[j].PropId==CSBrickManager::getInstance()->ChaScore2WeightFactorId)
|
||||||
{
|
{
|
||||||
CInterfaceManager *im = CInterfaceManager::getInstance();
|
CInterfaceManager *im = CInterfaceManager::getInstance();
|
||||||
if (!_ServerUserDefaultWeightHandsLeaf) _ServerUserDefaultWeightHandsLeaf = NLGUI::CDBManager::getInstance()->getDbProp("SERVER:USER:DEFAULT_WEIGHT_HANDS");
|
if (!_ServerUserDefaultWeightHandsLeaf) _ServerUserDefaultWeightHandsLeaf = NLGUI::CDBManager::getInstance()->getDbProp("SERVER:USER:DEFAULT_WEIGHT_HANDS");
|
||||||
|
@ -4591,7 +4591,7 @@ int CSPhraseComAdpater::luaGetCastRange(CLuaState &ls)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
int CSPhraseComAdpater::luaGetHpCost(CLuaState &ls)
|
int CSPhraseComAdpater::luaGetChaScore1Cost(CLuaState &ls)
|
||||||
{
|
{
|
||||||
if (Phrase.Bricks.empty())
|
if (Phrase.Bricks.empty())
|
||||||
{
|
{
|
||||||
|
@ -4599,15 +4599,15 @@ int CSPhraseComAdpater::luaGetHpCost(CLuaState &ls)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
CSPhraseManager *pPM = CSPhraseManager::getInstance();
|
CSPhraseManager *pPM = CSPhraseManager::getInstance();
|
||||||
sint hpCost;
|
sint ChaScore1Cost;
|
||||||
sint hpCostMalus;
|
sint ChaScore1CostMalus;
|
||||||
pPM->getPhraseHpCost(this->Phrase, pPM->getTotalActionMalus(Phrase), hpCost, hpCostMalus);
|
pPM->getPhraseChaScore1Cost(this->Phrase, pPM->getTotalActionMalus(Phrase), ChaScore1Cost, ChaScore1CostMalus);
|
||||||
ls.push(hpCost + hpCostMalus);
|
ls.push(ChaScore1Cost + ChaScore1CostMalus);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
int CSPhraseComAdpater::luaGetSapCost(CLuaState &ls)
|
int CSPhraseComAdpater::luaGetChaScore3Cost(CLuaState &ls)
|
||||||
{
|
{
|
||||||
if (Phrase.Bricks.empty())
|
if (Phrase.Bricks.empty())
|
||||||
{
|
{
|
||||||
|
@ -4615,10 +4615,10 @@ int CSPhraseComAdpater::luaGetSapCost(CLuaState &ls)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
CSPhraseManager *pPM = CSPhraseManager::getInstance();
|
CSPhraseManager *pPM = CSPhraseManager::getInstance();
|
||||||
sint sapCost;
|
sint ChaScore3Cost;
|
||||||
sint sapCostMalus;
|
sint ChaScore3CostMalus;
|
||||||
pPM->getPhraseSapCost(this->Phrase, pPM->getTotalActionMalus(Phrase), sapCost, sapCostMalus);
|
pPM->getPhraseChaScore3Cost(this->Phrase, pPM->getTotalActionMalus(Phrase), ChaScore3Cost, ChaScore3CostMalus);
|
||||||
ls.push(sapCost + sapCostMalus);
|
ls.push(ChaScore3Cost + ChaScore3CostMalus);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4637,7 +4637,7 @@ int CSPhraseComAdpater::luaGetSuccessRate(CLuaState &ls)
|
||||||
|
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
int CSPhraseComAdpater::luaGetFocusCost(CLuaState &ls)
|
int CSPhraseComAdpater::luaGetChaScore4Cost(CLuaState &ls)
|
||||||
{
|
{
|
||||||
if (Phrase.Bricks.empty())
|
if (Phrase.Bricks.empty())
|
||||||
{
|
{
|
||||||
|
@ -4645,15 +4645,15 @@ int CSPhraseComAdpater::luaGetFocusCost(CLuaState &ls)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
CSPhraseManager *pPM = CSPhraseManager::getInstance();
|
CSPhraseManager *pPM = CSPhraseManager::getInstance();
|
||||||
sint focusCost;
|
sint ChaScore4Cost;
|
||||||
sint focusCostMalus;
|
sint ChaScore4CostMalus;
|
||||||
pPM->getPhraseFocusCost(this->Phrase, pPM->getTotalActionMalus(Phrase), focusCost, focusCostMalus);
|
pPM->getPhraseChaScore4Cost(this->Phrase, pPM->getTotalActionMalus(Phrase), ChaScore4Cost, ChaScore4CostMalus);
|
||||||
ls.push(focusCost + focusCostMalus);
|
ls.push(ChaScore4Cost + ChaScore4CostMalus);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ***************************************************************************
|
// ***************************************************************************
|
||||||
int CSPhraseComAdpater::luaGetStaCost(CLuaState &ls)
|
int CSPhraseComAdpater::luaGetChaScore2Cost(CLuaState &ls)
|
||||||
{
|
{
|
||||||
if (Phrase.Bricks.empty())
|
if (Phrase.Bricks.empty())
|
||||||
{
|
{
|
||||||
|
@ -4661,10 +4661,10 @@ int CSPhraseComAdpater::luaGetStaCost(CLuaState &ls)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
CSPhraseManager *pPM = CSPhraseManager::getInstance();
|
CSPhraseManager *pPM = CSPhraseManager::getInstance();
|
||||||
sint staCost;
|
sint ChaScore2Cost;
|
||||||
sint staCostMalus;
|
sint ChaScore2CostMalus;
|
||||||
pPM->getPhraseStaCost(this->Phrase, pPM->getTotalActionMalus(Phrase), staCost, staCostMalus);
|
pPM->getPhraseChaScore2Cost(this->Phrase, pPM->getTotalActionMalus(Phrase), ChaScore2Cost, ChaScore2CostMalus);
|
||||||
ls.push(staCost + staCostMalus);
|
ls.push(ChaScore2Cost + ChaScore2CostMalus);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -70,10 +70,10 @@ public:
|
||||||
REFLECT_EXPORT_START(CSPhraseComAdpater, CInterfaceElement)
|
REFLECT_EXPORT_START(CSPhraseComAdpater, CInterfaceElement)
|
||||||
REFLECT_LUA_METHOD("getCastTime", luaGetCastTime)
|
REFLECT_LUA_METHOD("getCastTime", luaGetCastTime)
|
||||||
REFLECT_LUA_METHOD("getCastRange", luaGetCastRange)
|
REFLECT_LUA_METHOD("getCastRange", luaGetCastRange)
|
||||||
REFLECT_LUA_METHOD("getHpCost", luaGetHpCost)
|
REFLECT_LUA_METHOD("getChaScore1Cost", luaGetChaScore1Cost)
|
||||||
REFLECT_LUA_METHOD("getSapCost", luaGetSapCost)
|
REFLECT_LUA_METHOD("getChaScore3Cost", luaGetChaScore3Cost)
|
||||||
REFLECT_LUA_METHOD("getFocusCost", luaGetFocusCost)
|
REFLECT_LUA_METHOD("getChaScore4Cost", luaGetChaScore4Cost)
|
||||||
REFLECT_LUA_METHOD("getStaCost", luaGetStaCost)
|
REFLECT_LUA_METHOD("getChaScore2Cost", luaGetChaScore2Cost)
|
||||||
REFLECT_LUA_METHOD("getName", luaGetName)
|
REFLECT_LUA_METHOD("getName", luaGetName)
|
||||||
REFLECT_LUA_METHOD("getDesc", luaGetDesc)
|
REFLECT_LUA_METHOD("getDesc", luaGetDesc)
|
||||||
REFLECT_LUA_METHOD("getSuccessRate", luaGetSuccessRate)
|
REFLECT_LUA_METHOD("getSuccessRate", luaGetSuccessRate)
|
||||||
|
@ -86,11 +86,11 @@ public:
|
||||||
REFLECT_EXPORT_END
|
REFLECT_EXPORT_END
|
||||||
int luaGetCastTime(CLuaState &ls);
|
int luaGetCastTime(CLuaState &ls);
|
||||||
int luaGetCastRange(CLuaState &ls);
|
int luaGetCastRange(CLuaState &ls);
|
||||||
int luaGetHpCost(CLuaState &ls);
|
int luaGetChaScore1Cost(CLuaState &ls);
|
||||||
int luaGetSapCost(CLuaState &ls);
|
int luaGetChaScore3Cost(CLuaState &ls);
|
||||||
int luaGetSuccessRate(CLuaState &ls);
|
int luaGetSuccessRate(CLuaState &ls);
|
||||||
int luaGetFocusCost(CLuaState &ls);
|
int luaGetChaScore4Cost(CLuaState &ls);
|
||||||
int luaGetStaCost(CLuaState &ls);
|
int luaGetChaScore2Cost(CLuaState &ls);
|
||||||
int luaGetName(CLuaState &ls);
|
int luaGetName(CLuaState &ls);
|
||||||
int luaGetDesc(CLuaState &ls);
|
int luaGetDesc(CLuaState &ls);
|
||||||
int luaIsMagicPhrase(CLuaState &ls);
|
int luaIsMagicPhrase(CLuaState &ls);
|
||||||
|
@ -343,14 +343,14 @@ public:
|
||||||
sint getForageExtractionPhraseSuccessRate(const CSPhraseCom &phrase, SKILLS::ESkills skill);
|
sint getForageExtractionPhraseSuccessRate(const CSPhraseCom &phrase, SKILLS::ESkills skill);
|
||||||
// return the fmt according to forage terrain specializing
|
// return the fmt according to forage terrain specializing
|
||||||
ucstring getForageExtractionPhraseEcotypeFmt(const CSPhraseCom &phrase);
|
ucstring getForageExtractionPhraseEcotypeFmt(const CSPhraseCom &phrase);
|
||||||
// Get the Phrase Sap Cost
|
// Get the Phrase ChaScore3 Cost
|
||||||
void getPhraseSapCost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus);
|
void getPhraseChaScore3Cost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus);
|
||||||
// Get the Phrase Sta Cost
|
// Get the Phrase ChaScore2 Cost
|
||||||
void getPhraseStaCost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus);
|
void getPhraseChaScore2Cost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus);
|
||||||
// Get the Phrase Focus Cost
|
// Get the Phrase ChaScore4 Cost
|
||||||
void getPhraseFocusCost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus);
|
void getPhraseChaScore4Cost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus);
|
||||||
// Get the Phrase Hp Cost
|
// Get the Phrase ChaScore1 Cost
|
||||||
void getPhraseHpCost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus);
|
void getPhraseChaScore1Cost(const CSPhraseCom &phrase, uint32 totalActionMalus, sint &cost, sint &costMalus);
|
||||||
// Get the Phrase Cast Time
|
// Get the Phrase Cast Time
|
||||||
void getPhraseCastTime(const CSPhraseCom &phrase, uint32 totalActionMalus, float &castTime, float &castTimeMalus);
|
void getPhraseCastTime(const CSPhraseCom &phrase, uint32 totalActionMalus, float &castTime, float &castTimeMalus);
|
||||||
// Get the Phrase Range
|
// Get the Phrase Range
|
||||||
|
|
|
@ -3168,18 +3168,18 @@ void impulseItemCloseRoomInventory(NLMISC::CBitMemStream &impulse)
|
||||||
void impulseUserBars(NLMISC::CBitMemStream &impulse)
|
void impulseUserBars(NLMISC::CBitMemStream &impulse)
|
||||||
{
|
{
|
||||||
uint8 msgNumber;
|
uint8 msgNumber;
|
||||||
sint32 hp, sap, sta, focus;
|
sint32 ChaScore1, ChaScore3, ChaScore2, ChaScore4;
|
||||||
impulse.serial(msgNumber);
|
impulse.serial(msgNumber);
|
||||||
impulse.serial(hp);
|
impulse.serial(ChaScore1);
|
||||||
impulse.serial(sap);
|
impulse.serial(ChaScore3);
|
||||||
impulse.serial(sta);
|
impulse.serial(ChaScore2);
|
||||||
impulse.serial(focus);
|
impulse.serial(ChaScore4);
|
||||||
|
|
||||||
if (PermanentlyBanned) return;
|
if (PermanentlyBanned) return;
|
||||||
|
|
||||||
// Setup the user Bars
|
// Setup the user Bars
|
||||||
CBarManager::CBarInfo bi;
|
CBarManager::CBarInfo bi;
|
||||||
CBarManager::getInstance()->setupUserBarInfo(msgNumber, hp, sap, sta, focus);
|
CBarManager::getInstance()->setupUserBarInfo(msgNumber, ChaScore1, ChaScore3, ChaScore2, ChaScore4);
|
||||||
}
|
}
|
||||||
|
|
||||||
//-----------------------------------------------
|
//-----------------------------------------------
|
||||||
|
@ -3437,19 +3437,19 @@ void impulseUserPopup(NLMISC::CBitMemStream &impulse)
|
||||||
|
|
||||||
//-----------------------------------------------
|
//-----------------------------------------------
|
||||||
//-----------------------------------------------
|
//-----------------------------------------------
|
||||||
//extern void impulseCombatFlyingHpDelta(NLMISC::CBitMemStream &impulse);
|
//extern void impulseCombatFlyingChaScore1Delta(NLMISC::CBitMemStream &impulse);
|
||||||
void impulseCombatFlyingHpDelta(NLMISC::CBitMemStream &impulse)
|
void impulseCombatFlyingChaScore1Delta(NLMISC::CBitMemStream &impulse)
|
||||||
{
|
{
|
||||||
uint32 entityID;
|
uint32 entityID;
|
||||||
uint32 rgba;
|
uint32 rgba;
|
||||||
sint16 hpDelta;
|
sint16 ChaScore1Delta;
|
||||||
impulse.serial(entityID);
|
impulse.serial(entityID);
|
||||||
impulse.serial(rgba);
|
impulse.serial(rgba);
|
||||||
impulse.serial(hpDelta);
|
impulse.serial(ChaScore1Delta);
|
||||||
CRGBA color((uint8)(rgba>>24&255), (uint8)(rgba>>16&255), (uint8)(rgba>>8&255), (uint8)(rgba&255));
|
CRGBA color((uint8)(rgba>>24&255), (uint8)(rgba>>16&255), (uint8)(rgba>>8&255), (uint8)(rgba&255));
|
||||||
CEntityCL *entity = EntitiesMngr.getEntityByCompressedIndex(entityID);
|
CEntityCL *entity = EntitiesMngr.getEntityByCompressedIndex(entityID);
|
||||||
if (entity)
|
if (entity)
|
||||||
entity->addHPOutput(ucstring(toString("%d", hpDelta)), color);
|
entity->addChaScore1Output(ucstring(toString("%d", ChaScore1Delta)), color);
|
||||||
}
|
}
|
||||||
|
|
||||||
void impulseCombatFlyingTextItemSpecialEffectProc(NLMISC::CBitMemStream &impulse)
|
void impulseCombatFlyingTextItemSpecialEffectProc(NLMISC::CBitMemStream &impulse)
|
||||||
|
@ -3467,7 +3467,7 @@ void impulseCombatFlyingTextItemSpecialEffectProc(NLMISC::CBitMemStream &impulse
|
||||||
strFindReplace(text, "%param", toString("%d", param));
|
strFindReplace(text, "%param", toString("%d", param));
|
||||||
CEntityCL *entity = EntitiesMngr.getEntityByCompressedIndex(entityID);
|
CEntityCL *entity = EntitiesMngr.getEntityByCompressedIndex(entityID);
|
||||||
if (entity)
|
if (entity)
|
||||||
entity->addHPOutput(text, color);
|
entity->addChaScore1Output(text, color);
|
||||||
}
|
}
|
||||||
|
|
||||||
void impulseCombatFlyingText(NLMISC::CBitMemStream &impulse)
|
void impulseCombatFlyingText(NLMISC::CBitMemStream &impulse)
|
||||||
|
@ -3532,7 +3532,7 @@ void impulseCombatFlyingText(NLMISC::CBitMemStream &impulse)
|
||||||
|
|
||||||
CEntityCL *entity = EntitiesMngr.getEntityByCompressedIndex(entityID);
|
CEntityCL *entity = EntitiesMngr.getEntityByCompressedIndex(entityID);
|
||||||
if (entity)
|
if (entity)
|
||||||
entity->addHPOutput(text, color, dt);
|
entity->addChaScore1Output(text, color, dt);
|
||||||
}
|
}
|
||||||
|
|
||||||
void impulseSetSeason(NLMISC::CBitMemStream &impulse)
|
void impulseSetSeason(NLMISC::CBitMemStream &impulse)
|
||||||
|
@ -3716,7 +3716,7 @@ void initializeNetwork()
|
||||||
GenericMsgHeaderMngr.setCallback( "OUTPOST:CHOOSE_SIDE", impulseOutpostChooseSide );
|
GenericMsgHeaderMngr.setCallback( "OUTPOST:CHOOSE_SIDE", impulseOutpostChooseSide );
|
||||||
GenericMsgHeaderMngr.setCallback( "OUTPOST:DECLARE_WAR_ACK", impulseOutpostDeclareWarAck );
|
GenericMsgHeaderMngr.setCallback( "OUTPOST:DECLARE_WAR_ACK", impulseOutpostDeclareWarAck );
|
||||||
|
|
||||||
GenericMsgHeaderMngr.setCallback( "COMBAT:FLYING_HP_DELTA", impulseCombatFlyingHpDelta );
|
GenericMsgHeaderMngr.setCallback( "COMBAT:FLYING_ChaScore1_DELTA", impulseCombatFlyingChaScore1Delta );
|
||||||
GenericMsgHeaderMngr.setCallback( "COMBAT:FLYING_TEXT_ISE", impulseCombatFlyingTextItemSpecialEffectProc );
|
GenericMsgHeaderMngr.setCallback( "COMBAT:FLYING_TEXT_ISE", impulseCombatFlyingTextItemSpecialEffectProc );
|
||||||
GenericMsgHeaderMngr.setCallback( "COMBAT:FLYING_TEXT", impulseCombatFlyingText );
|
GenericMsgHeaderMngr.setCallback( "COMBAT:FLYING_TEXT", impulseCombatFlyingText );
|
||||||
|
|
||||||
|
|
|
@ -264,7 +264,7 @@ Tbe bitfield returned let us know if the selected target is a botobject, if it i
|
||||||
- r2:updateAnimBarActions: called by CDynamicMapClient::onNpcAnimationTargeted, update the anim bar that contains action that can be done on the selecte npc
|
- r2:updateAnimBarActions: called by CDynamicMapClient::onNpcAnimationTargeted, update the anim bar that contains action that can be done on the selecte npc
|
||||||
|
|
||||||
The DM can push button on the anim bar to do some DM functions like kill an npc, kill a group, despawn, heal, control, speak as
|
The DM can push button on the anim bar to do some DM functions like kill an npc, kill a group, despawn, heal, control, speak as
|
||||||
- dssTarget with a parameter DESPAWN_NPC, ADD_HP, KILL_NPC, ADD_HP, GRP_KILL, GRP_HEAL, CONTROL, STOP_CONTROL, TALK_AS, STOP_TALK let the dm do dm functions.
|
- dssTarget with a parameter DESPAWN_NPC, ADD_ChaScore1, KILL_NPC, ADD_ChaScore1, GRP_KILL, GRP_HEAL, CONTROL, STOP_CONTROL, TALK_AS, STOP_TALK let the dm do dm functions.
|
||||||
|
|
||||||
CONTROL / STOP_CONTROL
|
CONTROL / STOP_CONTROL
|
||||||
The DM can incarnate a npc: in this case he is tp at the npc position, he takes the speed of the npc.
|
The DM can incarnate a npc: in this case he is tp at the npc position, he takes the speed of the npc.
|
||||||
|
@ -294,10 +294,10 @@ Each Sentence that the npc would say is written in this dynamic channel.
|
||||||
- CServerAnimationModule handle the management of list (CServerAnimationModule::setTalkingAsPlayer)
|
- CServerAnimationModule handle the management of list (CServerAnimationModule::setTalkingAsPlayer)
|
||||||
- Ais handle the notification of the death of bot (useful for updating the list of controlled bot) (see CAisWrapper::askBotDespawnNotification)
|
- Ais handle the notification of the death of bot (useful for updating the list of controlled bot) (see CAisWrapper::askBotDespawnNotification)
|
||||||
|
|
||||||
ADD_HP / KILL_NPC / ADD_HP / GRP_KILL / GRP_HEAL
|
ADD_ChaScore1 / KILL_NPC / ADD_ChaScore1 / GRP_KILL / GRP_HEAL
|
||||||
It is possible for the Dm to add/remove hp to a group/npc.
|
It is possible for the Dm to add/remove ChaScore1 to a group/npc.
|
||||||
- dssTarget with ADD_HP ok KILL_NPC or GRP_KILL or GRP_HEAL as parameter: heal/kill a npc/group
|
- dssTarget with ADD_ChaScore1 ok KILL_NPC or GRP_KILL or GRP_HEAL as parameter: heal/kill a npc/group
|
||||||
Note: CServerAnimationModule will call CAiWrapper::setGrpHPLevel, CAiWrapper::setHPLevel that will call Ais native function (nf_npc_grp.cpp)
|
Note: CServerAnimationModule will call CAiWrapper::setGrpChaScore1Level, CAiWrapper::setChaScore1Level that will call Ais native function (nf_npc_grp.cpp)
|
||||||
Theses native functions set the life of a npc.
|
Theses native functions set the life of a npc.
|
||||||
Its simple to add other AIS native function the same way.
|
Its simple to add other AIS native function the same way.
|
||||||
|
|
||||||
|
@ -741,9 +741,9 @@ public:
|
||||||
|
|
||||||
/*! Updates the DM admin bar. Send DM commands.
|
/*! Updates the DM admin bar. Send DM commands.
|
||||||
Called withou param this function update the DM action bar.
|
Called withou param this function update the DM action bar.
|
||||||
Called with as parameter DESPAWN_NPC, ADD_HP, KILL_NPC, ADD_HP, GRP_KILL, GRP_HEAL, CONTROL, STOP_CONTROL, TALK_AS, STOP_TALK it launch DM function
|
Called with as parameter DESPAWN_NPC, ADD_ChaScore1, KILL_NPC, ADD_ChaScore1, GRP_KILL, GRP_HEAL, CONTROL, STOP_CONTROL, TALK_AS, STOP_TALK it launch DM function
|
||||||
\see CClientEditionModule for more info
|
\see CClientEditionModule for more info
|
||||||
\parm args a list of optional argument may be empty or one of "DESPAWN_NPC" "ADD_HP" "KILL_NPC" "ADD_HP" "GRP_KILL" "GRP_HEAL" "CONTROL" "STOP_CONTROL" "TALK_AS" "STOP_TALK". Multi param could be useful for setting the aggro distance (NIY).
|
\parm args a list of optional argument may be empty or one of "DESPAWN_NPC" "ADD_ChaScore1" "KILL_NPC" "ADD_ChaScore1" "GRP_KILL" "GRP_HEAL" "CONTROL" "STOP_CONTROL" "TALK_AS" "STOP_TALK". Multi param could be useful for setting the aggro distance (NIY).
|
||||||
*/
|
*/
|
||||||
void dssTarget( std::vector<std::string>& args);
|
void dssTarget( std::vector<std::string>& args);
|
||||||
|
|
||||||
|
|
|
@ -814,7 +814,7 @@ void CDynamicMapClient::onNpcAnimationTargeted(uint32 mode)
|
||||||
{
|
{
|
||||||
lua.push("r2ed_anim_kill");
|
lua.push("r2ed_anim_kill");
|
||||||
if (mode & CAnimationProp::Grouped) { lua.push("r2ed_anim_grp_kill"); }
|
if (mode & CAnimationProp::Grouped) { lua.push("r2ed_anim_grp_kill"); }
|
||||||
lua.push("r2ed_anim_add_hp");
|
lua.push("r2ed_anim_add_ChaScore1");
|
||||||
if (mode & CAnimationProp::Grouped) { lua.push("r2ed_anim_grp_heal"); }
|
if (mode & CAnimationProp::Grouped) { lua.push("r2ed_anim_grp_heal"); }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2187,8 +2187,8 @@ void CUserEntity::applyBehaviour(const CBehaviourContext &behaviourContext) // v
|
||||||
{
|
{
|
||||||
startItemAttackFXs(_CurrentBehaviour.Combat.ImpactIntensity != 0 && _CurrentBehaviour.Combat.HitType != HITTYPE::Failed, _CurrentBehaviour.Combat.ImpactIntensity);
|
startItemAttackFXs(_CurrentBehaviour.Combat.ImpactIntensity != 0 && _CurrentBehaviour.Combat.HitType != HITTYPE::Failed, _CurrentBehaviour.Combat.ImpactIntensity);
|
||||||
}
|
}
|
||||||
// DeltaHP
|
// DeltaChaScore1
|
||||||
applyBehaviourFlyingHPs(behaviourContext, behaviour, targetHitDates);
|
applyBehaviourFlyingChaScore1s(behaviourContext, behaviour, targetHitDates);
|
||||||
}
|
}
|
||||||
// In third person view (or camera mode), play the same way than for the others.
|
// In third person view (or camera mode), play the same way than for the others.
|
||||||
else
|
else
|
||||||
|
|
|
@ -74,7 +74,7 @@ BS_INVALID 1
|
||||||
BS_INVALID_TARGET 4
|
BS_INVALID_TARGET 4
|
||||||
BS_ITEM_INCOMPATIBLE 1
|
BS_ITEM_INCOMPATIBLE 1
|
||||||
BS_ITEM_INCOMPATIBLE_FOR_2_HANDS 1
|
BS_ITEM_INCOMPATIBLE_FOR_2_HANDS 1
|
||||||
BS_LACK_STAMINA 1
|
BS_LACK_ChaScore2 1
|
||||||
BS_MAGIC_SHIELD_DEAD 1
|
BS_MAGIC_SHIELD_DEAD 1
|
||||||
BS_MAGIC_SHIELD_I 1
|
BS_MAGIC_SHIELD_I 1
|
||||||
BS_MISSES_EE 1
|
BS_MISSES_EE 1
|
||||||
|
@ -113,7 +113,7 @@ BS_SENTENCE_MAGIC_FAILED_S 1
|
||||||
BS_SUFFER_BENEFICIAL_SPELL_E 1
|
BS_SUFFER_BENEFICIAL_SPELL_E 1
|
||||||
BS_SUFFER_NEUTRAL_SPELL_E 1
|
BS_SUFFER_NEUTRAL_SPELL_E 1
|
||||||
BS_SUFFER_OFFENSIVE_SPELL_E 1
|
BS_SUFFER_OFFENSIVE_SPELL_E 1
|
||||||
BS_SUFFER_PENALTY_NO_STAMINA 1
|
BS_SUFFER_PENALTY_NO_ChaScore2 1
|
||||||
BS_TARGET_HIGHER_LEVEL 1
|
BS_TARGET_HIGHER_LEVEL 1
|
||||||
BS_TARGET_NOT_ATTACKABLE 1
|
BS_TARGET_NOT_ATTACKABLE 1
|
||||||
BS_TARGET_PROTECTED 1
|
BS_TARGET_PROTECTED 1
|
||||||
|
@ -205,54 +205,54 @@ EGS_CANNOT_USE_ACTION_ON_MEKTOUB 1
|
||||||
EGS_CANNOT_USE_NULL_SKILL_S 1
|
EGS_CANNOT_USE_NULL_SKILL_S 1
|
||||||
EGS_CANT_BUY_ANOTHER_PACKER 1
|
EGS_CANT_BUY_ANOTHER_PACKER 1
|
||||||
EGS_CANT_SELL_ANYTHING 1
|
EGS_CANT_SELL_ANYTHING 1
|
||||||
EGS_CH_HIGH_REGEN_LIFE_E 1
|
EGS_CH_HIGH_REGEN_ChaScore1_E 1
|
||||||
EGS_CH_HIGH_REGEN_SAP_E 1
|
EGS_CH_HIGH_REGEN_ChaScore3_E 1
|
||||||
EGS_CH_HIGH_REGEN_STAMINA_E 1
|
EGS_CH_HIGH_REGEN_ChaScore2_E 1
|
||||||
EGS_CH_HIGH_U_REGEN_LIFE_E 1
|
EGS_CH_HIGH_U_REGEN_ChaScore1_E 1
|
||||||
EGS_CH_HIGH_U_REGEN_SAP_E 1
|
EGS_CH_HIGH_U_REGEN_ChaScore3_E 1
|
||||||
EGS_CH_HIGH_U_REGEN_STAMINA_E 1
|
EGS_CH_HIGH_U_REGEN_ChaScore2_E 1
|
||||||
EGS_CH_MAJOR_STEAL_HP_E 1
|
EGS_CH_MAJOR_STEAL_ChaScore1_E 1
|
||||||
EGS_CH_MAJOR_STEAL_HP_END 1
|
EGS_CH_MAJOR_STEAL_ChaScore1_END 1
|
||||||
EGS_CH_MAJOR_STEAL_SAP_E 1
|
EGS_CH_MAJOR_STEAL_ChaScore3_E 1
|
||||||
EGS_CH_MAJOR_STEAL_SAP_END 1
|
EGS_CH_MAJOR_STEAL_ChaScore3_END 1
|
||||||
EGS_CH_MAJOR_STEAL_STAMINA_E 1
|
EGS_CH_MAJOR_STEAL_ChaScore2_E 1
|
||||||
EGS_CH_MAJOR_STEAL_STAMINA_END 1
|
EGS_CH_MAJOR_STEAL_ChaScore2_END 1
|
||||||
EGS_CH_MAJOR_U_STEAL_HP_E 1
|
EGS_CH_MAJOR_U_STEAL_ChaScore1_E 1
|
||||||
EGS_CH_MAJOR_U_STEAL_SAP_E 1
|
EGS_CH_MAJOR_U_STEAL_ChaScore3_E 1
|
||||||
EGS_CH_MAJOR_U_STEAL_STAMINA_E 1
|
EGS_CH_MAJOR_U_STEAL_ChaScore2_E 1
|
||||||
EGS_CH_MINOR_ALCHEMY_HP_EI 1
|
EGS_CH_MINOR_ALCHEMY_ChaScore1_EI 1
|
||||||
EGS_CH_MINOR_ALCHEMY_SAP_EI 1
|
EGS_CH_MINOR_ALCHEMY_ChaScore3_EI 1
|
||||||
EGS_CH_MINOR_ALCHEMY_STA_EI 33
|
EGS_CH_MINOR_ALCHEMY_ChaScore2_EI 33
|
||||||
EGS_CH_MINOR_LIFE_HEAL_EI 1
|
EGS_CH_MINOR_ChaScore1_HEAL_EI 1
|
||||||
EGS_CH_MINOR_LIFE_HEAL_SELF_I 1
|
EGS_CH_MINOR_ChaScore1_HEAL_SELF_I 1
|
||||||
EGS_CH_MINOR_REGEN_LIFE_E 1
|
EGS_CH_MINOR_REGEN_ChaScore1_E 1
|
||||||
EGS_CH_MINOR_REGEN_SAP_E 1
|
EGS_CH_MINOR_REGEN_ChaScore3_E 1
|
||||||
EGS_CH_MINOR_REGEN_STAMINA_E 1
|
EGS_CH_MINOR_REGEN_ChaScore2_E 1
|
||||||
EGS_CH_MINOR_SAP_HEAL_EI 1
|
EGS_CH_MINOR_ChaScore3_HEAL_EI 1
|
||||||
EGS_CH_MINOR_SAP_HEAL_SELF_I 1
|
EGS_CH_MINOR_ChaScore3_HEAL_SELF_I 1
|
||||||
EGS_CH_MINOR_STAMINA_HEAL_EI 1
|
EGS_CH_MINOR_ChaScore2_HEAL_EI 1
|
||||||
EGS_CH_MINOR_STAMINA_HEAL_SELF_I 1
|
EGS_CH_MINOR_ChaScore2_HEAL_SELF_I 1
|
||||||
EGS_CH_MINOR_STEAL_HP_EI 1
|
EGS_CH_MINOR_STEAL_ChaScore1_EI 1
|
||||||
EGS_CH_MINOR_STEAL_SAP_EI 1
|
EGS_CH_MINOR_STEAL_ChaScore3_EI 1
|
||||||
EGS_CH_MINOR_STEAL_STAMINA_EI 1
|
EGS_CH_MINOR_STEAL_ChaScore2_EI 1
|
||||||
EGS_CH_MINOR_U_ALCHEMY_HP_EI 1
|
EGS_CH_MINOR_U_ALCHEMY_ChaScore1_EI 1
|
||||||
EGS_CH_MINOR_U_ALCHEMY_SAP_EI 1
|
EGS_CH_MINOR_U_ALCHEMY_ChaScore3_EI 1
|
||||||
EGS_CH_MINOR_U_ALCHEMY_STA_EI 33
|
EGS_CH_MINOR_U_ALCHEMY_ChaScore2_EI 33
|
||||||
EGS_CH_MINOR_U_LIFE_HEAL_EI 1
|
EGS_CH_MINOR_U_ChaScore1_HEAL_EI 1
|
||||||
EGS_CH_MINOR_U_REGEN_LIFE_E 1
|
EGS_CH_MINOR_U_REGEN_ChaScore1_E 1
|
||||||
EGS_CH_MINOR_U_REGEN_SAP_E 1
|
EGS_CH_MINOR_U_REGEN_ChaScore3_E 1
|
||||||
EGS_CH_MINOR_U_REGEN_STAMINA_E 1
|
EGS_CH_MINOR_U_REGEN_ChaScore2_E 1
|
||||||
EGS_CH_MINOR_U_SAP_HEAL_EI 1
|
EGS_CH_MINOR_U_ChaScore3_HEAL_EI 1
|
||||||
EGS_CH_MINOR_U_STAMINA_HEAL_EI 1
|
EGS_CH_MINOR_U_Chascore2_HEAL_EI 1
|
||||||
EGS_CH_MINOR_U_STEAL_HP_EI 1
|
EGS_CH_MINOR_U_STEAL_ChaScore1_EI 1
|
||||||
EGS_CH_MINOR_U_STEAL_SAP_EI 1
|
EGS_CH_MINOR_U_STEAL_ChaScore3_EI 1
|
||||||
EGS_CH_MINOR_U_STEAL_STAMINA_EI 1
|
EGS_CH_MINOR_U_STEAL_ChaScore2_EI 1
|
||||||
EGS_CH_SPECTATORS_MINOR_LIFE_HEAL_EEI 1
|
EGS_CH_SPECTATORS_MINOR_ChaScore1_HEAL_EEI 1
|
||||||
EGS_CH_SPECTATORS_MINOR_LIFE_HEAL_SELF_EI 1
|
EGS_CH_SPECTATORS_MINOR_ChaScore1_HEAL_SELF_EI 1
|
||||||
EGS_CH_SPECTATORS_MINOR_SAP_HEAL_EEI 1
|
EGS_CH_SPECTATORS_MINOR_ChaScore3_HEAL_EEI 1
|
||||||
EGS_CH_SPECTATORS_MINOR_SAP_HEAL_SELF_EI 1
|
EGS_CH_SPECTATORS_MINOR_ChaScore3_HEAL_SELF_EI 1
|
||||||
EGS_CH_SPECTATORS_MINOR_STAMINA_HEAL_EEI 1
|
EGS_CH_SPECTATORS_MINOR_ChaScore2_HEAL_EEI 1
|
||||||
EGS_CH_SPECTATORS_MINOR_STAMINA_HEAL_SELF_EI 1
|
EGS_CH_SPECTATORS_MINOR_ChaScore2_HEAL_SELF_EI 1
|
||||||
EGS_COMBAT_CMS_DOWN 1
|
EGS_COMBAT_CMS_DOWN 1
|
||||||
EGS_COMBAT_HITS_YOU_EIS 1
|
EGS_COMBAT_HITS_YOU_EIS 1
|
||||||
EGS_COMBAT_HITS_YOU_NULL_ES 1
|
EGS_COMBAT_HITS_YOU_NULL_ES 1
|
||||||
|
@ -283,7 +283,7 @@ EGS_EFFECT_FURIOUS_BOOST_END_E 1
|
||||||
EGS_EFFECT_LEAVES_FRENZY_E 1
|
EGS_EFFECT_LEAVES_FRENZY_E 1
|
||||||
EGS_EFFECT_LIGHTNING_PARRY_E 1
|
EGS_EFFECT_LIGHTNING_PARRY_E 1
|
||||||
EGS_EFFECT_LIGHTNING_PARRY_END_E 1
|
EGS_EFFECT_LIGHTNING_PARRY_END_E 1
|
||||||
EGS_EFFECT_LOSE_HP_BLEED 1
|
EGS_EFFECT_LOSE_ChaScore1_BLEED 1
|
||||||
EGS_EFFECT_MAJOR_FURIOUS_BOOST_E 1
|
EGS_EFFECT_MAJOR_FURIOUS_BOOST_E 1
|
||||||
EGS_EFFECT_MAJOR_FURIOUS_BOOST_END_E 1
|
EGS_EFFECT_MAJOR_FURIOUS_BOOST_END_E 1
|
||||||
EGS_EFFECT_MAJOR_RAPID_BURST_E 1
|
EGS_EFFECT_MAJOR_RAPID_BURST_E 1
|
||||||
|
@ -304,7 +304,7 @@ EGS_EFFECT_U_FEAR_END 1
|
||||||
EGS_EFFECT_U_FEAR_FRENZY_E 1
|
EGS_EFFECT_U_FEAR_FRENZY_E 1
|
||||||
EGS_EFFECT_U_FEAR_FRENZY_END 1
|
EGS_EFFECT_U_FEAR_FRENZY_END 1
|
||||||
EGS_EFFECT_U_LEAVE_FRENZY 1
|
EGS_EFFECT_U_LEAVE_FRENZY 1
|
||||||
EGS_EFFECT_U_LOSE_HP_BLEED 1
|
EGS_EFFECT_U_LOSE_ChaScore1_BLEED 1
|
||||||
EGS_EFFECT_U_RESIST_BLEED_E 1
|
EGS_EFFECT_U_RESIST_BLEED_E 1
|
||||||
EGS_EFFECT_U_RESIST_FEAR_E 1
|
EGS_EFFECT_U_RESIST_FEAR_E 1
|
||||||
EGS_EFFECT_U_RESIST_FEAR_FRENZY_E 1
|
EGS_EFFECT_U_RESIST_FEAR_FRENZY_E 1
|
||||||
|
@ -390,44 +390,44 @@ EGS_LOOT_BS_I 1
|
||||||
EGS_LOOT_LS_I 1
|
EGS_LOOT_LS_I 1
|
||||||
EGS_LOOT_MS_I 1
|
EGS_LOOT_MS_I 1
|
||||||
EGS_LOOT_VBS_I 1
|
EGS_LOOT_VBS_I 1
|
||||||
EGS_LOSE_SAP_EI 1
|
EGS_LOSE_ChaScore3_EI 1
|
||||||
EGS_LOSE_STA_EI 1
|
EGS_LOSE_ChaScore2_EI 1
|
||||||
EGS_MAGIC_BAD_TARGET 1
|
EGS_MAGIC_BAD_TARGET 1
|
||||||
EGS_MAGIC_CASTER_NEW_LINK_E 1
|
EGS_MAGIC_CASTER_NEW_LINK_E 1
|
||||||
EGS_MAGIC_CASTER_REMOVE_LINK_E 1
|
EGS_MAGIC_CASTER_REMOVE_LINK_E 1
|
||||||
EGS_MAGIC_CAST_OFFENSIVE_SPELL_HP_EEI 1
|
EGS_MAGIC_CAST_OFFENSIVE_SPELL_ChaScore1_EEI 1
|
||||||
EGS_MAGIC_CAST_OFFENSIVE_SPELL_SAP_EEI 1
|
EGS_MAGIC_CAST_OFFENSIVE_SPELL_ChaScore3_EEI 1
|
||||||
EGS_MAGIC_CAST_OFFENSIVE_SPELL_STA_EEI 1
|
EGS_MAGIC_CAST_OFFENSIVE_SPELL_ChaScore2_EEI 1
|
||||||
EGS_MAGIC_HEAL_SPELL_HP_EEI 1
|
EGS_MAGIC_HEAL_SPELL_ChaScore1_EEI 1
|
||||||
EGS_MAGIC_HEAL_SPELL_SAP_EEI 1
|
EGS_MAGIC_HEAL_SPELL_ChasCore3_EEI 1
|
||||||
EGS_MAGIC_HEAL_SPELL_STA_EEI 1
|
EGS_MAGIC_HEAL_SPELL_ChaScore2_EEI 1
|
||||||
EGS_MAGIC_SELFCAST_OFFENSIVE_SPELL_HP_EI 1
|
EGS_MAGIC_SELFCAST_OFFENSIVE_SPELL_ChaScore1_EI 1
|
||||||
EGS_MAGIC_SELFCAST_OFFENSIVE_SPELL_SAP_EI 1
|
EGS_MAGIC_SELFCAST_OFFENSIVE_SPELL_ChaScore3_EI 1
|
||||||
EGS_MAGIC_SELFCAST_OFFENSIVE_SPELL_STA_EI 1
|
EGS_MAGIC_SELFCAST_OFFENSIVE_SPELL_ChaScore2_EI 1
|
||||||
EGS_MAGIC_SELF_HEAL_HP_EI 1
|
EGS_MAGIC_SELF_HEAL_ChaScore1_EI 1
|
||||||
EGS_MAGIC_SELF_HEAL_SAP_EI 1
|
EGS_MAGIC_SELF_HEAL_ChaScore3_EI 1
|
||||||
EGS_MAGIC_SELF_HEAL_STA_EI 1
|
EGS_MAGIC_SELF_HEAL_ChaScore2_EI 1
|
||||||
EGS_MAGIC_TARGET_NEW_LINK_E 1
|
EGS_MAGIC_TARGET_NEW_LINK_E 1
|
||||||
EGS_MAGIC_TARGET_OUT_OF_RANGE 1
|
EGS_MAGIC_TARGET_OUT_OF_RANGE 1
|
||||||
EGS_MAGIC_TARGET_REMOVE_LINK_E 1
|
EGS_MAGIC_TARGET_REMOVE_LINK_E 1
|
||||||
EGS_MAGIC_U_CAST_HEAL_SPELL_HP_EI 1
|
EGS_MAGIC_U_CAST_HEAL_SPELL_ChaScore1_EI 1
|
||||||
EGS_MAGIC_U_CAST_HEAL_SPELL_SAP_EI 1
|
EGS_MAGIC_U_CAST_HEAL_SPELL_ChaScore3_EI 1
|
||||||
EGS_MAGIC_U_CAST_HEAL_SPELL_STA_EI 1
|
EGS_MAGIC_U_CAST_HEAL_SPELL_ChaScore2_EI 1
|
||||||
EGS_MAGIC_U_CAST_OFFENSIVE_SPELL_HP_EI 1
|
EGS_MAGIC_U_CAST_OFFENSIVE_SPELL_ChaScore1_EI 1
|
||||||
EGS_MAGIC_U_CAST_OFFENSIVE_SPELL_SAP_EI 1
|
EGS_MAGIC_U_CAST_OFFENSIVE_SPELL_ChaScore3_EI 1
|
||||||
EGS_MAGIC_U_CAST_OFFENSIVE_SPELL_STA_EI 1
|
EGS_MAGIC_U_CAST_OFFENSIVE_SPELL_ChaScore2_EI 1
|
||||||
EGS_MAGIC_U_SELFCAST_OFFENSIVE_SPELL_HP_I 1
|
EGS_MAGIC_U_SELFCAST_OFFENSIVE_SPELL_ChaScore1_I 1
|
||||||
EGS_MAGIC_U_SELFCAST_OFFENSIVE_SPELL_SAP_I 1
|
EGS_MAGIC_U_SELFCAST_OFFENSIVE_SPELL_ChaScore3_I 1
|
||||||
EGS_MAGIC_U_SELFCAST_OFFENSIVE_SPELL_STA_I 1
|
EGS_MAGIC_U_SELFCAST_OFFENSIVE_SPELL_ChaScore2_I 1
|
||||||
EGS_MAGIC_U_SELF_HEAL_HP_I 1
|
EGS_MAGIC_U_SELF_HEAL_ChaScore1_I 1
|
||||||
EGS_MAGIC_U_SELF_HEAL_SAP_I 1
|
EGS_MAGIC_U_SELF_HEAL_ChaScore3_I 1
|
||||||
EGS_MAGIC_U_SELF_HEAL_STA_I 1
|
EGS_MAGIC_U_SELF_HEAL_ChaScore2_I 1
|
||||||
EGS_MAGIC_U_SUFFER_HEAL_SPELL_HP_EI 1
|
EGS_MAGIC_U_SUFFER_HEAL_SPELL_ChaScore1_EI 1
|
||||||
EGS_MAGIC_U_SUFFER_HEAL_SPELL_SAP_EI 1
|
EGS_MAGIC_U_SUFFER_HEAL_SPELL_ChaScore3_EI 1
|
||||||
EGS_MAGIC_U_SUFFER_HEAL_SPELL_STA_EI 1
|
EGS_MAGIC_U_SUFFER_HEAL_SPELL_ChaScore2_EI 1
|
||||||
EGS_MAGIC_U_SUFFER_OFFENSIVE_SPELL_HP_EI 1
|
EGS_MAGIC_U_SUFFER_OFFENSIVE_SPELL_ChaScore1_EI 1
|
||||||
EGS_MAGIC_U_SUFFER_OFFENSIVE_SPELL_SAP_EI 1
|
EGS_MAGIC_U_SUFFER_OFFENSIVE_SPELL_ChaScore3_EI 1
|
||||||
EGS_MAGIC_U_SUFFER_OFFENSIVE_SPELL_STA_EI 1
|
EGS_MAGIC_U_SUFFER_OFFENSIVE_SPELL_ChaScore2_EI 1
|
||||||
EGS_MELEE_BESTIAL_RAGE_E 1
|
EGS_MELEE_BESTIAL_RAGE_E 1
|
||||||
EGS_MELEE_BLIND_FURY_E 1
|
EGS_MELEE_BLIND_FURY_E 1
|
||||||
EGS_MELEE_DEFLECT_E 1
|
EGS_MELEE_DEFLECT_E 1
|
||||||
|
@ -584,9 +584,9 @@ EGS_TARGET_HIT_RFOOT_EI 1
|
||||||
EGS_TARGET_HIT_RLEG_EI 1
|
EGS_TARGET_HIT_RLEG_EI 1
|
||||||
EGS_TMP_GENERIC_EFFECT_BEGIN 1
|
EGS_TMP_GENERIC_EFFECT_BEGIN 1
|
||||||
EGS_TMP_GENERIC_EFFECT_END 1
|
EGS_TMP_GENERIC_EFFECT_END 1
|
||||||
EGS_TOO_EXPENSIVE_HP 1
|
EGS_TOO_EXPENSIVE_ChaScore1 1
|
||||||
EGS_TOO_EXPENSIVE_SAP 1
|
EGS_TOO_EXPENSIVE_ChaScore3 1
|
||||||
EGS_TOO_EXPENSIVE_STAMINA 1
|
EGS_TOO_EXPENSIVE_ChaScore2 1
|
||||||
EGS_TRACKING_DIRECTION_ES 1
|
EGS_TRACKING_DIRECTION_ES 1
|
||||||
EGS_TRACKING_END_E 1
|
EGS_TRACKING_END_E 1
|
||||||
EGS_TRACKING_START_E 1
|
EGS_TRACKING_START_E 1
|
||||||
|
@ -597,12 +597,12 @@ EGS_TRAINING_FAILED_S 1
|
||||||
EGS_TRAINING_HIGH_DIFFICULTY 1
|
EGS_TRAINING_HIGH_DIFFICULTY 1
|
||||||
EGS_TRAINING_INVALID_MODE 1
|
EGS_TRAINING_INVALID_MODE 1
|
||||||
EGS_TRAINING_LOW_QUALITY_TOOL 1
|
EGS_TRAINING_LOW_QUALITY_TOOL 1
|
||||||
EGS_TRAINING_NOT_ENOUGH_SAP 1
|
EGS_TRAINING_NOT_ENOUGH_ChaScore3 1
|
||||||
EGS_TRAINING_NOT_ENOUGH_STAMINA 1
|
EGS_TRAINING_NOT_ENOUGH_ChaScore2 1
|
||||||
EGS_TRAINING_SUCCESS 1
|
EGS_TRAINING_SUCCESS 1
|
||||||
EGS_USE_LAST_AMMO 1
|
EGS_USE_LAST_AMMO 1
|
||||||
EGS_U_LOSE_SAP_EI 1
|
EGS_U_LOSE_ChaScore3_EI 1
|
||||||
EGS_U_LOSE_STA_EI 1
|
EGS_U_LOSE_ChaScore2_EI 1
|
||||||
EGS_YOU_CRITICAL_HIT_E 1
|
EGS_YOU_CRITICAL_HIT_E 1
|
||||||
EGS_YOU_EFFECT_ALREADY_PRESENT 1
|
EGS_YOU_EFFECT_ALREADY_PRESENT 1
|
||||||
EGS_YOU_FUMBLE 1
|
EGS_YOU_FUMBLE 1
|
||||||
|
@ -685,11 +685,11 @@ OPS_XP_MISSION_GAINXP_SKILL_S 1
|
||||||
OPS_XP_NORMAL_GAINXP_SKILL_S 1
|
OPS_XP_NORMAL_GAINXP_SKILL_S 1
|
||||||
OPS_XP_NO_GAINXP_SKILL_S 1
|
OPS_XP_NO_GAINXP_SKILL_S 1
|
||||||
OPS_XP_PROGRESS_CHARACTERISTIC_S 1
|
OPS_XP_PROGRESS_CHARACTERISTIC_S 1
|
||||||
OPS_XP_PROGRESS_HP 1
|
OPS_XP_PROGRESS_ChaScore1 1
|
||||||
OPS_XP_PROGRESS_RESIST_S 1
|
OPS_XP_PROGRESS_RESIST_S 1
|
||||||
OPS_XP_PROGRESS_SAP 1
|
OPS_XP_PROGRESS_ChaScore3 1
|
||||||
OPS_XP_PROGRESS_SKILL_S 70
|
OPS_XP_PROGRESS_ChaScore2_S 70
|
||||||
OPS_XP_PROGRESS_STAMINA 1
|
OPS_XP_PROGRESS_ChaScore2 1
|
||||||
WOS_HARVEST_ALREADY_IN_PROGRESS 1
|
WOS_HARVEST_ALREADY_IN_PROGRESS 1
|
||||||
WOS_HARVEST_ALREADY_IN_PROGRESS_E 1
|
WOS_HARVEST_ALREADY_IN_PROGRESS_E 1
|
||||||
WOS_HARVEST_FAILED 5
|
WOS_HARVEST_FAILED 5
|
||||||
|
|
|
@ -173,13 +173,13 @@
|
||||||
<!-- NB a UID invalid doesn't mean no target. It may be a Forage source -->
|
<!-- NB a UID invalid doesn't mean no target. It may be a Forage source -->
|
||||||
<leaf name="UID"
|
<leaf name="UID"
|
||||||
type="I20" />
|
type="I20" />
|
||||||
<leaf name="HP"
|
<leaf name="ChaScore1"
|
||||||
type="S8" />
|
type="S8" />
|
||||||
<leaf name="SAP"
|
<leaf name="ChaScore3"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
<leaf name="STA"
|
<leaf name="ChaScore2"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
<leaf name="FOCUS"
|
<leaf name="ChaScore4"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
<leaf name="PLAYER_LEVEL"
|
<leaf name="PLAYER_LEVEL"
|
||||||
type="I8" />
|
type="I8" />
|
||||||
|
@ -253,11 +253,11 @@
|
||||||
<!-- Entity Unique Identifier -->
|
<!-- Entity Unique Identifier -->
|
||||||
<leaf name="NAME"
|
<leaf name="NAME"
|
||||||
type="I32" />
|
type="I32" />
|
||||||
<leaf name="HP"
|
<leaf name="ChaScore1"
|
||||||
type="S8" />
|
type="S8" />
|
||||||
<leaf name="SAP"
|
<leaf name="ChaScore3"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
<leaf name="STA"
|
<leaf name="ChaScore2"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
<leaf name="POS"
|
<leaf name="POS"
|
||||||
type="I64" />
|
type="I64" />
|
||||||
|
@ -1025,21 +1025,21 @@
|
||||||
<leaf name="COUNTER"
|
<leaf name="COUNTER"
|
||||||
type="I4" />
|
type="I4" />
|
||||||
<!-- The cost each second -->
|
<!-- The cost each second -->
|
||||||
<leaf name="HP_COST"
|
<leaf name="ChaScore1_COST"
|
||||||
type="I16" />
|
type="I16" />
|
||||||
<leaf name="SAP_COST"
|
<leaf name="ChaScore3_COST"
|
||||||
type="I16" />
|
type="I16" />
|
||||||
<leaf name="STA_COST"
|
<leaf name="ChaScore2_COST"
|
||||||
type="I16" />
|
type="I16" />
|
||||||
<!-- Entity name -->
|
<!-- Entity name -->
|
||||||
<leaf name="TARGET_NAME"
|
<leaf name="TARGET_NAME"
|
||||||
type="TEXT" />
|
type="TEXT" />
|
||||||
<!-- Entity State -->
|
<!-- Entity State -->
|
||||||
<leaf name="TARGET_HP"
|
<leaf name="TARGET_ChaScore1"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
<leaf name="TARGET_SAP"
|
<leaf name="TARGET_ChaScore3"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
<leaf name="TARGET_STA"
|
<leaf name="TARGET_ChaScore2"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
</branch>
|
</branch>
|
||||||
</branch>
|
</branch>
|
||||||
|
@ -1512,6 +1512,8 @@
|
||||||
type="I5" />
|
type="I5" />
|
||||||
<leaf name="DESPAWN"
|
<leaf name="DESPAWN"
|
||||||
type="I7" />
|
type="I7" />
|
||||||
|
<leaf name="NAME"
|
||||||
|
type="I32" />
|
||||||
</branch>
|
</branch>
|
||||||
</branch>
|
</branch>
|
||||||
<branch name="DEBUG_INFO"
|
<branch name="DEBUG_INFO"
|
||||||
|
|
|
@ -1101,7 +1101,7 @@
|
||||||
<branch name="USER">
|
<branch name="USER">
|
||||||
<leaf name="BARS"
|
<leaf name="BARS"
|
||||||
format="u8 s16 s16 s16 s16"
|
format="u8 s16 s16 s16 s16"
|
||||||
description="server update the players Bars (fast message) $msgNumber $hp $sap $sta $focus" />
|
description="server update the players Bars (fast message) $msgNumber $cha_score1 $cha_score3 $cha_score2 $cha_score4" />
|
||||||
<leaf name="POPUP"
|
<leaf name="POPUP"
|
||||||
format="u32 u32"
|
format="u32 u32"
|
||||||
description="server display an important info message on the client (u32 titleDynString u32 textDynString)" />
|
description="server display an important info message on the client (u32 titleDynString u32 textDynString)" />
|
||||||
|
|
|
@ -107,11 +107,11 @@ public:
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void setHPLevel(NLMISC::CEntityId entityId, uint32 alias, float value)
|
virtual void setChaScore1Level(NLMISC::CEntityId entityId, uint32 alias, float value)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void setGrpHPLevel(NLMISC::CEntityId entityId, uint32 alias, float value)
|
virtual void setGrpChaScore1Level(NLMISC::CEntityId entityId, uint32 alias, float value)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -176,8 +176,8 @@ public:
|
||||||
|
|
||||||
virtual void setAggroRange(NLMISC::CEntityId entityId, float range);
|
virtual void setAggroRange(NLMISC::CEntityId entityId, float range);
|
||||||
|
|
||||||
virtual void setHPLevel(NLMISC::CEntityId entityId, uint32 alias, float value);
|
virtual void setChaScore1Level(NLMISC::CEntityId entityId, uint32 alias, float value);
|
||||||
virtual void setGrpHPLevel(NLMISC::CEntityId entityId, uint32 alias, float value);
|
virtual void setGrpChaScore1Level(NLMISC::CEntityId entityId, uint32 alias, float value);
|
||||||
|
|
||||||
|
|
||||||
virtual void triggerGrpEvent(NLMISC::CEntityId entityId, float eventId);
|
virtual void triggerGrpEvent(NLMISC::CEntityId entityId, float eventId);
|
||||||
|
|
|
@ -414,9 +414,9 @@ namespace BRICK_FAMILIES
|
||||||
|
|
||||||
// training & characteristics
|
// training & characteristics
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(BTFOC)
|
NL_STRING_CONVERSION_TABLE_ENTRY(BTFOC)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(BTHP)
|
NL_STRING_CONVERSION_TABLE_ENTRY(BTTRA)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(BTSAP)
|
NL_STRING_CONVERSION_TABLE_ENTRY(BTOBL)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(BTSTA)
|
NL_STRING_CONVERSION_TABLE_ENTRY(BTPAI)
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(BPPC)
|
NL_STRING_CONVERSION_TABLE_ENTRY(BPPC)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(BPPM)
|
NL_STRING_CONVERSION_TABLE_ENTRY(BPPM)
|
||||||
|
|
|
@ -574,9 +574,9 @@ namespace BRICK_FAMILIES
|
||||||
// ********
|
// ********
|
||||||
BeginTraining,
|
BeginTraining,
|
||||||
BTFOC = BeginTraining,
|
BTFOC = BeginTraining,
|
||||||
BTHP,
|
BTTRA,
|
||||||
BTSAP,
|
BTOBL,
|
||||||
BTSTA,
|
BTPAI,
|
||||||
|
|
||||||
// special for carac buying
|
// special for carac buying
|
||||||
BeginCharacBuy,
|
BeginCharacBuy,
|
||||||
|
@ -632,26 +632,26 @@ namespace BRICK_FAMILIES
|
||||||
BeginFightPowerParameter = BeginPowerParameter,
|
BeginFightPowerParameter = BeginPowerParameter,
|
||||||
BSFMA = BeginFightPowerParameter, // taunt power
|
BSFMA = BeginFightPowerParameter, // taunt power
|
||||||
BSFMB, // shielding power
|
BSFMB, // shielding power
|
||||||
BSFMC, // stamina aura
|
BSFMC, // ChaScore2 aura
|
||||||
BSFMD, // protection aura
|
BSFMD, // protection aura
|
||||||
BSFME, // umbrella aura
|
BSFME, // umbrella aura
|
||||||
BSFMF, // berserk
|
BSFMF, // berserk
|
||||||
BSFMG, // war cry
|
BSFMG, // war cry
|
||||||
BSFMH, // heal stamina
|
BSFMH, // heal ChaScore2
|
||||||
BSFMI, // fire wall
|
BSFMI, // fire wall
|
||||||
BSFMJ, // thorn wall
|
BSFMJ, // thorn wall
|
||||||
BSFMK, // water wall
|
BSFMK, // water wall
|
||||||
BSFML, // lightning
|
BSFML, // lightning
|
||||||
EndFightPowerParameter = BSFML,
|
EndFightPowerParameter = BSFML,
|
||||||
|
|
||||||
BSXMA, // life aura
|
BSXMA, // ChaScore1 aura
|
||||||
BSXMB, // invulnerability
|
BSXMB, // invulnerability
|
||||||
BSXMC, // heal Hp
|
BSXMC, // heal ChaScore1
|
||||||
|
|
||||||
BSDMA, // speed
|
BSDMA, // speed
|
||||||
|
|
||||||
// G for general ??
|
// G for general ??
|
||||||
BSGMA, // heal focus
|
BSGMA, // heal ChaScore4
|
||||||
BSGMB, // enchant weapon
|
BSGMB, // enchant weapon
|
||||||
BSGMBA,
|
BSGMBA,
|
||||||
BSGMBC,
|
BSGMBC,
|
||||||
|
@ -662,17 +662,17 @@ namespace BRICK_FAMILIES
|
||||||
BSGMBS,
|
BSGMBS,
|
||||||
|
|
||||||
BeginMagicPowerParameter,
|
BeginMagicPowerParameter,
|
||||||
BSMMA = BeginMagicPowerParameter, // sap aura
|
BSMMA = BeginMagicPowerParameter, // ChaScore3 aura
|
||||||
BSMMB, // anti magic shield
|
BSMMB, // anti magic shield
|
||||||
BSMMC, // balance hp
|
BSMMC, // balance ChaScore1
|
||||||
BSMMD, // heal sap
|
BSMMD, // heal ChaScore3
|
||||||
EndMagicPowerParameter = BSMMD,
|
EndMagicPowerParameter = BSMMD,
|
||||||
|
|
||||||
// consumable powers
|
// consumable powers
|
||||||
BSCMA, // heal Hp
|
BSCMA, // heal ChaScore1
|
||||||
BSCMB, // heal Sap
|
BSCMB, // heal ChaScore3
|
||||||
BSCMC, // heal Sta
|
BSCMC, // heal ChaScore2
|
||||||
BSCMD, // heal Focus
|
BSCMD, // heal ChaScore4
|
||||||
EndPowerParameter = BSCMD,
|
EndPowerParameter = BSCMD,
|
||||||
|
|
||||||
BeginMagicPowerCredit,
|
BeginMagicPowerCredit,
|
||||||
|
|
|
@ -53,13 +53,13 @@ namespace BRICK_FLAGS
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (Taunt)
|
NL_STRING_CONVERSION_TABLE_ENTRY (Taunt)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (SpeedingUp)
|
NL_STRING_CONVERSION_TABLE_ENTRY (SpeedingUp)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (LifeConcentration)
|
NL_STRING_CONVERSION_TABLE_ENTRY (ChaScore1Concentration)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (StaminaConcentration)
|
NL_STRING_CONVERSION_TABLE_ENTRY (ChaScore2Concentration)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (SapConcentration)
|
NL_STRING_CONVERSION_TABLE_ENTRY (ChaScore3Concentration)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (ConvertStamina)
|
NL_STRING_CONVERSION_TABLE_ENTRY (ConvertChaScore2)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (ConvertSap)
|
NL_STRING_CONVERSION_TABLE_ENTRY (ConvertChaScore3)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (Berserk)
|
NL_STRING_CONVERSION_TABLE_ENTRY (Berserk)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (BalanceHp)
|
NL_STRING_CONVERSION_TABLE_ENTRY (BalanceChaScore1)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (Heal)
|
NL_STRING_CONVERSION_TABLE_ENTRY (Heal)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (Shielding)
|
NL_STRING_CONVERSION_TABLE_ENTRY (Shielding)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (Invulnerability)
|
NL_STRING_CONVERSION_TABLE_ENTRY (Invulnerability)
|
||||||
|
@ -73,10 +73,10 @@ namespace BRICK_FLAGS
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (ModRangeSuccess)
|
NL_STRING_CONVERSION_TABLE_ENTRY (ModRangeSuccess)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (ModMagicSuccess)
|
NL_STRING_CONVERSION_TABLE_ENTRY (ModMagicSuccess)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (ModForageSuccess)
|
NL_STRING_CONVERSION_TABLE_ENTRY (ModForageSuccess)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (HealHpC)
|
NL_STRING_CONVERSION_TABLE_ENTRY (HealChaScore1C)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (HealSapC)
|
NL_STRING_CONVERSION_TABLE_ENTRY (HealChaScore2C)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (HealStaC)
|
NL_STRING_CONVERSION_TABLE_ENTRY (HealChaScore3C)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (HealFocusC)
|
NL_STRING_CONVERSION_TABLE_ENTRY (HealChaScore4C)
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (Aura)
|
NL_STRING_CONVERSION_TABLE_ENTRY (Aura)
|
||||||
|
|
||||||
|
|
|
@ -63,13 +63,13 @@ namespace BRICK_FLAGS
|
||||||
Taunt = BeginPowerFlags,
|
Taunt = BeginPowerFlags,
|
||||||
Shielding,
|
Shielding,
|
||||||
SpeedingUp,
|
SpeedingUp,
|
||||||
LifeConcentration,
|
ChaScore1Concentration,
|
||||||
StaminaConcentration,
|
ChaScore2Concentration,
|
||||||
SapConcentration,
|
ChaScore3Concentration,
|
||||||
ConvertStamina,
|
ConvertChaScore2,
|
||||||
ConvertSap,
|
ConvertChaScore3,
|
||||||
Berserk,
|
Berserk,
|
||||||
BalanceHp,
|
BalanceChaScore1,
|
||||||
Heal,
|
Heal,
|
||||||
Invulnerability,
|
Invulnerability,
|
||||||
EnchantWeapon,
|
EnchantWeapon,
|
||||||
|
@ -81,11 +81,11 @@ namespace BRICK_FLAGS
|
||||||
ModMagicSuccess,
|
ModMagicSuccess,
|
||||||
ModForageSuccess,
|
ModForageSuccess,
|
||||||
// consumable items related powers
|
// consumable items related powers
|
||||||
HealHpC,
|
HealChaScore1C,
|
||||||
HealSapC,
|
HealChaScore2C,
|
||||||
HealStaC,
|
HealChaScore3C,
|
||||||
HealFocusC,
|
HealChaScore4C,
|
||||||
EndPowerFlags = HealFocusC,
|
EndPowerFlags = HealChaScore4C,
|
||||||
|
|
||||||
NbPowerFlags = EndPowerFlags - 31,
|
NbPowerFlags = EndPowerFlags - 31,
|
||||||
|
|
||||||
|
|
|
@ -31,14 +31,14 @@ namespace CHARACTERISTICS
|
||||||
// The conversion table
|
// The conversion table
|
||||||
const CStringConversion<TCharacteristics>::CPair stringTable [] =
|
const CStringConversion<TCharacteristics>::CPair stringTable [] =
|
||||||
{
|
{
|
||||||
{ "Constitution", constitution }, //HP max
|
{ "Cha1", cha1 }, //Cha1 Max
|
||||||
{ "Metabolism", metabolism }, //Hp Regen
|
{ "Cha1Reg", cha1_reg }, //Cha1 Regeneration
|
||||||
{ "Intelligence", intelligence }, //Sap Max
|
{ "Cha3", cha3 }, //Cha3 Max
|
||||||
{ "Wisdom", wisdom }, //Sap regen
|
{ "Cha3Reg", cha3_reg }, //Cha3 Regeneration
|
||||||
{ "Strength", strength }, //Stamina Max
|
{ "Cha2", cha2 }, //Cha2 Max
|
||||||
{ "WellBalanced", well_balanced }, //Stamina regen
|
{ "Cha2Reg", cha2_reg }, //Cha2 Regeneration
|
||||||
{ "Dexterity", dexterity }, //Focus Max
|
{ "Cha4", cha4 }, //Cha4 Max
|
||||||
{ "Will", will }, //Focus regen
|
{ "Cha4Reg", cha4_reg }, //Cha4 Regeneration
|
||||||
|
|
||||||
{ "Unknown", Unknown },
|
{ "Unknown", Unknown },
|
||||||
|
|
||||||
|
@ -73,14 +73,14 @@ namespace CHARACTERISTICS
|
||||||
// The code conversion table
|
// The code conversion table
|
||||||
const CStringConversion<TCharacteristics>::CPair codeTable [] =
|
const CStringConversion<TCharacteristics>::CPair codeTable [] =
|
||||||
{
|
{
|
||||||
{ "c", constitution },
|
{ "s1", cha1 },
|
||||||
{ "m", metabolism },
|
{ "r1", cha1_reg },
|
||||||
{ "i", intelligence },
|
{ "s2", cha2 },
|
||||||
{ "w", wisdom },
|
{ "r2", cha2_reg },
|
||||||
{ "s", strength },
|
{ "s3", cha3 },
|
||||||
{ "b", well_balanced },
|
{ "r3", cha3_reg },
|
||||||
{ "d", dexterity },
|
{ "s4", cha4 },
|
||||||
{ "l", will },
|
{ "r4", cha4_reg },
|
||||||
};
|
};
|
||||||
CStringConversion<TCharacteristics> codeCharac(codeTable, sizeof(codeTable) / sizeof(codeTable[0]), Unknown );
|
CStringConversion<TCharacteristics> codeCharac(codeTable, sizeof(codeTable) / sizeof(codeTable[0]), Unknown );
|
||||||
|
|
||||||
|
|
|
@ -27,17 +27,17 @@ namespace CHARACTERISTICS
|
||||||
{
|
{
|
||||||
enum TCharacteristics
|
enum TCharacteristics
|
||||||
{
|
{
|
||||||
constitution = 0, //HP max
|
cha1 = 0, //Trauma max
|
||||||
metabolism, //Hp Regen
|
cha1_reg, //Trauma Regeneration
|
||||||
|
|
||||||
intelligence, //Sap Max
|
cha3, //Oblivion Max
|
||||||
wisdom, //Sap regen
|
cha3_reg, //Oblivion Regeneration
|
||||||
|
|
||||||
strength, //Stamina Max
|
cha2, //Pain Max
|
||||||
well_balanced, //Stamina regen
|
cha2_reg, //Pain Regeneration
|
||||||
|
|
||||||
dexterity, //Focus Max
|
cha4, //Focus Max
|
||||||
will, //Focus regen
|
cha4_reg, //Focus regen
|
||||||
|
|
||||||
NUM_CHARACTERISTICS,
|
NUM_CHARACTERISTICS,
|
||||||
Unknown = NUM_CHARACTERISTICS
|
Unknown = NUM_CHARACTERISTICS
|
||||||
|
@ -46,7 +46,7 @@ namespace CHARACTERISTICS
|
||||||
/**
|
/**
|
||||||
* get the right characteristic enum from the input string
|
* get the right characteristic enum from the input string
|
||||||
* \param str the input string
|
* \param str the input string
|
||||||
* \return the ECharacteristics associated to this string (unknown if the string cannot be interpreted)
|
* \return the TCharacteristics associated to this string (unknown if the string cannot be interpreted)
|
||||||
*/
|
*/
|
||||||
TCharacteristics toCharacteristic( const std::string &str );
|
TCharacteristics toCharacteristic( const std::string &str );
|
||||||
|
|
||||||
|
|
|
@ -96,10 +96,10 @@ namespace EFFECT_FAMILIES
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffCombatSkills )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffCombatSkills )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffDodge )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffDodge )
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffStaminaRegen )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffChaScore2Regen )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffSapRegen )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffChaScore3Regen )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffHitPointsRegen )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffChaScore1Regen )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffFocusRegen )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDebuffChaScore4Regen )
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDoTRot )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDoTRot )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDoTCold )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDoTCold )
|
||||||
|
@ -110,9 +110,9 @@ namespace EFFECT_FAMILIES
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDoTShock )
|
NL_STRING_CONVERSION_TABLE_ENTRY( CombatDoTShock )
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerShielding )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerShielding )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerLifeAura )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerChaScore1Aura )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerStaminaAura )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerChaScore2Aura )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerSapAura )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerChaScore3Aura )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerUmbrella )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerUmbrella )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerProtection )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerProtection )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerAntiMagicShield )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerAntiMagicShield )
|
||||||
|
@ -122,9 +122,9 @@ namespace EFFECT_FAMILIES
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerWaterWall )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerWaterWall )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerLightningWall )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerLightningWall )
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootLifeAura )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootChaScore1Aura )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootStaminaAura )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootChaScore2Aura )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootSapAura )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootChaScore3Aura )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootUmbrella )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootUmbrella )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootProtection )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootProtection )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootAntiMagicShield )
|
NL_STRING_CONVERSION_TABLE_ENTRY( PowerRootAntiMagicShield )
|
||||||
|
@ -162,14 +162,14 @@ namespace EFFECT_FAMILIES
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( ForageLocateDeposit )
|
NL_STRING_CONVERSION_TABLE_ENTRY( ForageLocateDeposit )
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemStatsHP )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemStatsChaScore1 )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemStatsSap )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemStatsChaScore3 )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemStatsSta )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemStatsChaScore2 )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemStatsFoc )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemStatsChaScore4 )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemRegenHP )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemRegenChaScore1 )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemRegenSap )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemRegenChaScore3 )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemRegenSta )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemRegenChaScore2 )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemRegenFoc )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemRegenChaScore4 )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemHarvestAgg )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemHarvestAgg )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemHarvestQty )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemHarvestQty )
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY( TotemHarvestZRs )
|
NL_STRING_CONVERSION_TABLE_ENTRY( TotemHarvestZRs )
|
||||||
|
@ -311,9 +311,9 @@ namespace EFFECT_FAMILIES
|
||||||
{ "debuff_combat_skills.sbrick",CombatDebuffCombatSkills },
|
{ "debuff_combat_skills.sbrick",CombatDebuffCombatSkills },
|
||||||
|
|
||||||
{ "shielding.sbrick", PowerShielding },
|
{ "shielding.sbrick", PowerShielding },
|
||||||
{ "life_aura.sbrick", PowerLifeAura },
|
{ "cha_score1_aura.sbrick", PowerChaScore1Aura },
|
||||||
{ "stamina_aura.sbrick", PowerStaminaAura },
|
{ "cha_score2_aura.sbrick", PowerChaScore2Aura },
|
||||||
{ "sap_aura.sbrick", PowerSapAura },
|
{ "cha_score3_aura.sbrick", PowerChaScore3Aura },
|
||||||
{ "umbrella_aura.sbrick", PowerUmbrella },
|
{ "umbrella_aura.sbrick", PowerUmbrella },
|
||||||
{ "melee_protection_aura.sbrick",PowerProtection },
|
{ "melee_protection_aura.sbrick",PowerProtection },
|
||||||
{ "anti_magic_shield_aura.sbrick",PowerAntiMagicShield },
|
{ "anti_magic_shield_aura.sbrick",PowerAntiMagicShield },
|
||||||
|
|
|
@ -117,10 +117,10 @@ namespace EFFECT_FAMILIES
|
||||||
CombatDebuffCombatSkills,
|
CombatDebuffCombatSkills,
|
||||||
CombatDebuffDodge,
|
CombatDebuffDodge,
|
||||||
|
|
||||||
CombatDebuffStaminaRegen,
|
CombatDebuffChaScore2Regen,
|
||||||
CombatDebuffSapRegen,
|
CombatDebuffChaScore3Regen,
|
||||||
CombatDebuffHitPointsRegen,
|
CombatDebuffChaScore1Regen,
|
||||||
CombatDebuffFocusRegen,
|
CombatDebuffChaScore4Regen,
|
||||||
|
|
||||||
CombatDoTRot,
|
CombatDoTRot,
|
||||||
CombatDoTCold,
|
CombatDoTCold,
|
||||||
|
@ -134,9 +134,9 @@ namespace EFFECT_FAMILIES
|
||||||
|
|
||||||
BeginPowerEffects,
|
BeginPowerEffects,
|
||||||
PowerShielding = BeginPowerEffects,
|
PowerShielding = BeginPowerEffects,
|
||||||
PowerLifeAura,
|
PowerChaScore1Aura,
|
||||||
PowerStaminaAura,
|
PowerChaScore2Aura,
|
||||||
PowerSapAura,
|
PowerChaScore3Aura,
|
||||||
PowerUmbrella,
|
PowerUmbrella,
|
||||||
PowerProtection,
|
PowerProtection,
|
||||||
PowerAntiMagicShield,
|
PowerAntiMagicShield,
|
||||||
|
@ -147,9 +147,9 @@ namespace EFFECT_FAMILIES
|
||||||
PowerWaterWall,
|
PowerWaterWall,
|
||||||
PowerLightningWall,
|
PowerLightningWall,
|
||||||
|
|
||||||
PowerRootLifeAura,
|
PowerRootChaScore1Aura,
|
||||||
PowerRootStaminaAura,
|
PowerRootChaScore2Aura,
|
||||||
PowerRootSapAura,
|
PowerRootChaScore3Aura,
|
||||||
PowerRootUmbrella,
|
PowerRootUmbrella,
|
||||||
PowerRootProtection,
|
PowerRootProtection,
|
||||||
PowerRootAntiMagicShield,
|
PowerRootAntiMagicShield,
|
||||||
|
@ -192,16 +192,16 @@ namespace EFFECT_FAMILIES
|
||||||
|
|
||||||
BeginTotemEffects,
|
BeginTotemEffects,
|
||||||
// stats
|
// stats
|
||||||
TotemStatsHP = BeginTotemEffects,
|
TotemStatsChaScore1 = BeginTotemEffects,
|
||||||
TotemStatsSap,
|
TotemStatsChaScore2,
|
||||||
TotemStatsSta,
|
TotemStatsChaScore3,
|
||||||
TotemStatsFoc,
|
TotemStatsChaScore4,
|
||||||
|
|
||||||
// regen
|
// regen
|
||||||
TotemRegenHP,
|
TotemRegenChaScore1,
|
||||||
TotemRegenSap,
|
TotemRegenChaScore2,
|
||||||
TotemRegenSta,
|
TotemRegenChaScore3,
|
||||||
TotemRegenFoc,
|
TotemRegenChaScore4,
|
||||||
|
|
||||||
// harvest
|
// harvest
|
||||||
TotemHarvestAgg,
|
TotemHarvestAgg,
|
||||||
|
|
|
@ -41,10 +41,10 @@ CItemInfos::CItemInfos()
|
||||||
MaxSlashingProtection = 0;
|
MaxSlashingProtection = 0;
|
||||||
MaxBluntProtection = 0;
|
MaxBluntProtection = 0;
|
||||||
MaxPiercingProtection = 0;
|
MaxPiercingProtection = 0;
|
||||||
HpBuff = 0;
|
ChaScore1Buff = 0;
|
||||||
SapBuff = 0;
|
ChaScore3Buff = 0;
|
||||||
StaBuff = 0;
|
ChaScore2Buff = 0;
|
||||||
FocusBuff = 0;
|
ChaScore4Buff = 0;
|
||||||
WearEquipmentMalus = 0.0f;
|
WearEquipmentMalus = 0.0f;
|
||||||
|
|
||||||
RequiredSkill = SKILLS::unknown;
|
RequiredSkill = SKILLS::unknown;
|
||||||
|
@ -107,10 +107,10 @@ void CItemInfos::serial(NLMISC::IStream & s)
|
||||||
s.serial( LacustreMagicResistance );
|
s.serial( LacustreMagicResistance );
|
||||||
s.serial( JungleMagicResistance );
|
s.serial( JungleMagicResistance );
|
||||||
s.serial( PrimaryRootMagicResistance );
|
s.serial( PrimaryRootMagicResistance );
|
||||||
s.serial( HpBuff );
|
s.serial( ChaScore1Buff );
|
||||||
s.serial( SapBuff );
|
s.serial( ChaScore3Buff );
|
||||||
s.serial( StaBuff );
|
s.serial( ChaScore2Buff );
|
||||||
s.serial( FocusBuff );
|
s.serial( ChaScore4Buff );
|
||||||
s.serial( Enchantment );
|
s.serial( Enchantment );
|
||||||
s.serial( WearEquipmentMalus );
|
s.serial( WearEquipmentMalus );
|
||||||
|
|
||||||
|
|
|
@ -105,10 +105,10 @@ public:
|
||||||
uint32 LacustreMagicResistance;
|
uint32 LacustreMagicResistance;
|
||||||
uint32 JungleMagicResistance;
|
uint32 JungleMagicResistance;
|
||||||
uint32 PrimaryRootMagicResistance;
|
uint32 PrimaryRootMagicResistance;
|
||||||
sint32 HpBuff; // hp buff / debuff gived when item is equipped
|
sint32 ChaScore1Buff; // ChaScore1 buff / debuff gived when item is equipped
|
||||||
sint32 SapBuff; // sap buff / debuff gived when item is equipped
|
sint32 ChaScore2Buff; // ChaScore2 buff / debuff gived when item is equipped
|
||||||
sint32 StaBuff; // sta buff / debuff gived when item is equipped
|
sint32 ChaScore3Buff; // ChaScore3 buff / debuff gived when item is equipped
|
||||||
sint32 FocusBuff; // focus buff / debuff gived when item is equipped
|
sint32 ChaScore4Buff; // ChaScore4 buff / debuff gived when item is equipped
|
||||||
|
|
||||||
SKILLS::ESkills RequiredSkill; // required skill
|
SKILLS::ESkills RequiredSkill; // required skill
|
||||||
uint16 RequiredSkillLevel; // required skill level
|
uint16 RequiredSkillLevel; // required skill level
|
||||||
|
|
|
@ -153,36 +153,36 @@ namespace MAGICFX
|
||||||
}
|
}
|
||||||
|
|
||||||
// *************************************************************************************
|
// *************************************************************************************
|
||||||
TMagicFx healtoMagicFx( sint32 healHp, sint32 healSap, sint32 healSta, bool link )
|
TMagicFx healtoMagicFx( sint32 healChaScore1, sint32 healChaScore3, sint32 healChaScore2, bool link )
|
||||||
{
|
{
|
||||||
if ( !link )
|
if ( !link )
|
||||||
{
|
{
|
||||||
if ( healHp > healSap )
|
if ( healChaScore1 > healChaScore3 )
|
||||||
{
|
{
|
||||||
if ( healHp > healSta )
|
if ( healChaScore1 > healChaScore2 )
|
||||||
return HealHP;
|
return HealChaScore1;
|
||||||
return HealSta;
|
return HealChaScore2;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ( healSap > healSta )
|
if ( healChaScore3 > healChaScore2 )
|
||||||
return HealSap;
|
return HealChaScore3;
|
||||||
return HealSta;
|
return HealChaScore2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ( healHp > healSap )
|
if ( healChaScore1 > healChaScore3 )
|
||||||
{
|
{
|
||||||
if ( healHp > healSta )
|
if ( healChaScore1 > healChaScore2 )
|
||||||
return HealHP;
|
return HealChaScore1;
|
||||||
return HealSta;
|
return HealChaScore2;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ( healSap > healSta )
|
if ( healChaScore3 > healChaScore2 )
|
||||||
return HealSap;
|
return HealChaScore3;
|
||||||
return HealSta;
|
return HealChaScore2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -93,9 +93,9 @@ namespace MAGICFX
|
||||||
Fear = 18, // ok
|
Fear = 18, // ok
|
||||||
|
|
||||||
// curatif
|
// curatif
|
||||||
HealHP = 15,
|
HealChaScore1 = 15,
|
||||||
HealSap = 16,
|
HealChaScore3 = 16,
|
||||||
HealSta = 17,
|
HealChaScore2 = 17,
|
||||||
|
|
||||||
Stun = 19,
|
Stun = 19,
|
||||||
|
|
||||||
|
@ -113,7 +113,7 @@ namespace MAGICFX
|
||||||
};
|
};
|
||||||
TMagicFx toMagicFx( DMGTYPE::EDamageType type ,bool Link);
|
TMagicFx toMagicFx( DMGTYPE::EDamageType type ,bool Link);
|
||||||
TMagicFx toMagicFx( EFFECT_FAMILIES::TEffectFamily effect);
|
TMagicFx toMagicFx( EFFECT_FAMILIES::TEffectFamily effect);
|
||||||
TMagicFx healtoMagicFx( sint32 healHp, sint32 healSap, sint32 healSta, bool link );
|
TMagicFx healtoMagicFx( sint32 healChaScore1, sint32 healChaScore3, sint32 healChaScore2, bool link );
|
||||||
|
|
||||||
|
|
||||||
// enum for the auras fxs
|
// enum for the auras fxs
|
||||||
|
@ -122,9 +122,9 @@ namespace MAGICFX
|
||||||
NoAura = 0,
|
NoAura = 0,
|
||||||
Divinity = 1,
|
Divinity = 1,
|
||||||
SpeedMove = 2,
|
SpeedMove = 2,
|
||||||
AuraSap = 3,
|
AuraChaScore3 = 3,
|
||||||
AuraSta = 4,
|
AuraChaScore2 = 4,
|
||||||
AuraHp = 5,
|
AuraChaScore1 = 5,
|
||||||
ProtectionMelee = 6,
|
ProtectionMelee = 6,
|
||||||
ProtectionRange = 7,
|
ProtectionRange = 7,
|
||||||
ProtectionMagic = 8,
|
ProtectionMagic = 8,
|
||||||
|
|
|
@ -100,7 +100,7 @@ namespace MBEHAV
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_ELEC)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_ELEC)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_FEAR)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_FEAR)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_FIRE)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_FIRE)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_HEALHP)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_HEALChaScore1)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_MAD)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_MAD)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_POISON)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_POISON)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_ROOT)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CAST_ROOT)
|
||||||
|
@ -135,13 +135,6 @@ namespace MBEHAV
|
||||||
// Combat creature
|
// Combat creature
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CREATURE_ATTACK_0)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CREATURE_ATTACK_0)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (CREATURE_ATTACK_1)
|
NL_STRING_CONVERSION_TABLE_ENTRY (CREATURE_ATTACK_1)
|
||||||
// New talents
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (JUGGLE)
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (DANSE)
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (PAINT_INIT)
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (PAINT_LOOP)
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY (PAINT_END)
|
|
||||||
|
|
||||||
NL_END_STRING_CONVERSION_TABLE(EBehaviour, BehaviourConversion, UNKNOWN_BEHAVIOUR)
|
NL_END_STRING_CONVERSION_TABLE(EBehaviour, BehaviourConversion, UNKNOWN_BEHAVIOUR)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -235,7 +235,7 @@ namespace MBEHAV
|
||||||
CAST_ELEC,
|
CAST_ELEC,
|
||||||
CAST_FEAR,
|
CAST_FEAR,
|
||||||
CAST_FIRE,
|
CAST_FIRE,
|
||||||
CAST_HEALHP,
|
CAST_HEALChaScore1,
|
||||||
CAST_MAD,
|
CAST_MAD,
|
||||||
CAST_POISON,
|
CAST_POISON,
|
||||||
CAST_ROOT,
|
CAST_ROOT,
|
||||||
|
@ -286,17 +286,7 @@ namespace MBEHAV
|
||||||
EMOTE_BEGIN, // 46
|
EMOTE_BEGIN, // 46
|
||||||
EMOTE_END = EMOTE_BEGIN+150,
|
EMOTE_END = EMOTE_BEGIN+150,
|
||||||
|
|
||||||
//--------- JUGGLE ----------//
|
|
||||||
JUGGLE,
|
|
||||||
|
|
||||||
//--------- DANSE ----------//,
|
|
||||||
DANSE,
|
|
||||||
|
|
||||||
//--------- PAINT ----------//
|
|
||||||
PAINT_INIT,
|
|
||||||
PAINT_LOOP,
|
|
||||||
PAINT_END,
|
|
||||||
|
|
||||||
// IMPORTANT : IF YOU MODIFY THIS ENUM DO NOT FORGET TO CHANGE stringToBehaviour() TOO
|
// IMPORTANT : IF YOU MODIFY THIS ENUM DO NOT FORGET TO CHANGE stringToBehaviour() TOO
|
||||||
NUMBER_OF_BEHAVIOURS
|
NUMBER_OF_BEHAVIOURS
|
||||||
};
|
};
|
||||||
|
@ -460,17 +450,17 @@ namespace MBEHAV
|
||||||
|
|
||||||
TBehaviour8 Behaviour;
|
TBehaviour8 Behaviour;
|
||||||
|
|
||||||
sint16 DeltaHP;
|
sint16 DeltaChaScore1;
|
||||||
uint16 Unused; /// Keep it, used to make the class size = 64 bits (sizeof(CBehaviour) MUST return 8 (bytes))
|
uint16 Unused; /// Keep it, used to make the class size = 64 bits (sizeof(CBehaviour) MUST return 8 (bytes))
|
||||||
|
|
||||||
inline CBehaviour() : Data(0), Data2(0), Behaviour(UNKNOWN_BEHAVIOUR), DeltaHP(0), Unused(0) {}
|
inline CBehaviour() : Data(0), Data2(0), Behaviour(UNKNOWN_BEHAVIOUR), DeltaChaScore1(0), Unused(0) {}
|
||||||
|
|
||||||
inline CBehaviour( EBehaviour behaviour )
|
inline CBehaviour( EBehaviour behaviour )
|
||||||
{
|
{
|
||||||
Unused = 0;
|
Unused = 0;
|
||||||
Data = 0;
|
Data = 0;
|
||||||
Data2 = 0;
|
Data2 = 0;
|
||||||
DeltaHP = 0;
|
DeltaChaScore1 = 0;
|
||||||
Behaviour = behaviour;
|
Behaviour = behaviour;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -479,7 +469,7 @@ namespace MBEHAV
|
||||||
Unused = 0;
|
Unused = 0;
|
||||||
Data = data1;
|
Data = data1;
|
||||||
Data2 = data2;
|
Data2 = data2;
|
||||||
DeltaHP = 0;
|
DeltaChaScore1 = 0;
|
||||||
Behaviour = behaviour;
|
Behaviour = behaviour;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -495,19 +485,19 @@ namespace MBEHAV
|
||||||
/* Problem: Olivier use a (sint64*) cast on a CBehaviour*, so this operator isn't called ! :'( */
|
/* Problem: Olivier use a (sint64*) cast on a CBehaviour*, so this operator isn't called ! :'( */
|
||||||
/* must use Member declaration order to match 'brutal' cast */
|
/* must use Member declaration order to match 'brutal' cast */
|
||||||
/************************************************************************/
|
/************************************************************************/
|
||||||
//return (((uint64)(DeltaHP)) << 32) + (((uint64)(Data2)) << 24) + (((uint64)(Data)) << 8) + Behaviour;
|
//return (((uint64)(DeltaChaScore1)) << 32) + (((uint64)(Data2)) << 24) + (((uint64)(Data)) << 8) + Behaviour;
|
||||||
return (((uint64)(DeltaHP)) << 32) + (((uint64)(Behaviour)) << 24) + (((uint64)(Data2)) << 16) + Data;
|
return (((uint64)(DeltaChaScore1)) << 32) + (((uint64)(Behaviour)) << 24) + (((uint64)(Data2)) << 16) + Data;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline CBehaviour& operator= ( uint64 raw )
|
inline CBehaviour& operator= ( uint64 raw )
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
DeltaHP = (sint16)(raw >> 32) ;
|
DeltaChaScore1 = (sint16)(raw >> 32) ;
|
||||||
Data2 = (uint8)(raw >> 24) ;
|
Data2 = (uint8)(raw >> 24) ;
|
||||||
Data = (uint16)(raw >> 8) ;
|
Data = (uint16)(raw >> 8) ;
|
||||||
Behaviour = TBehaviour8( (EBehaviour)(raw & 0xFF) );
|
Behaviour = TBehaviour8( (EBehaviour)(raw & 0xFF) );
|
||||||
*/
|
*/
|
||||||
DeltaHP = (sint16)(raw >> 32) ;
|
DeltaChaScore1 = (sint16)(raw >> 32) ;
|
||||||
Behaviour = TBehaviour8( (EBehaviour)((raw >> 24)& 0xFF) );
|
Behaviour = TBehaviour8( (EBehaviour)((raw >> 24)& 0xFF) );
|
||||||
Data2 = uint8((raw >> 16) & 0xff);
|
Data2 = uint8((raw >> 16) & 0xff);
|
||||||
Data = uint16(raw & 0xffff);
|
Data = uint16(raw & 0xffff);
|
||||||
|
@ -516,7 +506,7 @@ namespace MBEHAV
|
||||||
|
|
||||||
inline CBehaviour& operator= ( EBehaviour behaviour )
|
inline CBehaviour& operator= ( EBehaviour behaviour )
|
||||||
{
|
{
|
||||||
DeltaHP = 0;
|
DeltaChaScore1 = 0;
|
||||||
Data = 0;
|
Data = 0;
|
||||||
Data2 = 0;
|
Data2 = 0;
|
||||||
Behaviour = behaviour;
|
Behaviour = behaviour;
|
||||||
|
@ -524,13 +514,13 @@ namespace MBEHAV
|
||||||
}
|
}
|
||||||
|
|
||||||
inline CBehaviour& operator = ( const CBehaviour& p )
|
inline CBehaviour& operator = ( const CBehaviour& p )
|
||||||
{ DeltaHP = p.DeltaHP; Behaviour = p.Behaviour; Data = p.Data; Data2 = p.Data2; return *this; }
|
{ DeltaChaScore1 = p.DeltaChaScore1; Behaviour = p.Behaviour; Data = p.Data; Data2 = p.Data2; return *this; }
|
||||||
|
|
||||||
inline bool operator == ( const CBehaviour& p ) const
|
inline bool operator == ( const CBehaviour& p ) const
|
||||||
{ return (DeltaHP == p.DeltaHP && Behaviour == (EBehaviour)p.Behaviour && Data == p.Data && Data2 == p.Data2); }
|
{ return (DeltaChaScore1 == p.DeltaChaScore1 && Behaviour == (EBehaviour)p.Behaviour && Data == p.Data && Data2 == p.Data2); }
|
||||||
|
|
||||||
inline bool operator != ( const CBehaviour& p ) const
|
inline bool operator != ( const CBehaviour& p ) const
|
||||||
{ return (Behaviour != (EBehaviour)p.Behaviour || Data != p.Data || Data2 != p.Data2 || DeltaHP != p.DeltaHP); }
|
{ return (Behaviour != (EBehaviour)p.Behaviour || Data != p.Data || Data2 != p.Data2 || DeltaChaScore1 != p.DeltaChaScore1); }
|
||||||
|
|
||||||
inline void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
|
inline void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
|
||||||
{
|
{
|
||||||
|
@ -551,7 +541,7 @@ namespace MBEHAV
|
||||||
/// methode toString()
|
/// methode toString()
|
||||||
inline std::string toString() const
|
inline std::string toString() const
|
||||||
{
|
{
|
||||||
std::string text = behaviourToString( Behaviour ) + " " + NLMISC::toString(Data) + " "+NLMISC::toString(Data2)+" "+ NLMISC::toString(DeltaHP);
|
std::string text = behaviourToString( Behaviour ) + " " + NLMISC::toString(Data) + " "+NLMISC::toString(Data2)+" "+ NLMISC::toString(DeltaChaScore1);
|
||||||
return text;
|
return text;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -28,21 +28,21 @@ namespace POWERS
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(Taunt)
|
NL_STRING_CONVERSION_TABLE_ENTRY(Taunt)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(Shielding)
|
NL_STRING_CONVERSION_TABLE_ENTRY(Shielding)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(SpeedingUp)
|
NL_STRING_CONVERSION_TABLE_ENTRY(SpeedingUp)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(LifeConcentration)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ChaScore1Concentration)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(StaminaConcentration)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ChaScore2Concentration)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(SapConcentration)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ChaScore3Concentration)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(ConvertStamina)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ConvertChaScore2)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(ConvertSap)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ConvertChaScore3)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(Berserk)
|
NL_STRING_CONVERSION_TABLE_ENTRY(Berserk)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(BalanceHp)
|
NL_STRING_CONVERSION_TABLE_ENTRY(BalanceChaScore1)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(Heal)
|
NL_STRING_CONVERSION_TABLE_ENTRY(Heal)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(Invulnerability)
|
NL_STRING_CONVERSION_TABLE_ENTRY(Invulnerability)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(EnchantWeapon)
|
NL_STRING_CONVERSION_TABLE_ENTRY(EnchantWeapon)
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(HealHpC)
|
NL_STRING_CONVERSION_TABLE_ENTRY(HealChaScore1C)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(HealSapC)
|
NL_STRING_CONVERSION_TABLE_ENTRY(HealChaScore3C)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(HealStaC)
|
NL_STRING_CONVERSION_TABLE_ENTRY(HealChaScore2C)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(HealFocusC)
|
NL_STRING_CONVERSION_TABLE_ENTRY(HealChaScore4C)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(ChgCharac)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ChgCharac)
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(ModDefenseSkill)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ModDefenseSkill)
|
||||||
|
@ -60,9 +60,9 @@ namespace POWERS
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(ModPrimaryRootForageSkill)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ModPrimaryRootForageSkill)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(ModMagicProtection)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ModMagicProtection)
|
||||||
|
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(LifeAura)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ChaScore1Aura)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(StaminaAura)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ChaScore2Aura)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(SapAura)
|
NL_STRING_CONVERSION_TABLE_ENTRY(ChaScore3Aura)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(MeleeProtection)
|
NL_STRING_CONVERSION_TABLE_ENTRY(MeleeProtection)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(Umbrella)
|
NL_STRING_CONVERSION_TABLE_ENTRY(Umbrella)
|
||||||
NL_STRING_CONVERSION_TABLE_ENTRY(AntiMagicShield)
|
NL_STRING_CONVERSION_TABLE_ENTRY(AntiMagicShield)
|
||||||
|
|
|
@ -33,22 +33,22 @@ namespace POWERS
|
||||||
Taunt = BeginPower,
|
Taunt = BeginPower,
|
||||||
Shielding,
|
Shielding,
|
||||||
SpeedingUp,
|
SpeedingUp,
|
||||||
LifeConcentration,
|
ChaScore1Concentration,
|
||||||
StaminaConcentration,
|
ChaScore2Concentration,
|
||||||
SapConcentration,
|
ChaScore3Concentration,
|
||||||
ConvertStamina,
|
ConvertChaScore2,
|
||||||
ConvertSap,
|
ConvertChaScore3,
|
||||||
Berserk,
|
Berserk,
|
||||||
BalanceHp,
|
BalanceChaScore1,
|
||||||
Heal,
|
Heal,
|
||||||
Invulnerability,
|
Invulnerability,
|
||||||
EnchantWeapon,
|
EnchantWeapon,
|
||||||
|
|
||||||
// consumable item related powers
|
// consumable item related powers
|
||||||
HealHpC,
|
HealChaScore1C,
|
||||||
HealSapC,
|
HealChaScore3C,
|
||||||
HealStaC,
|
HealChaScore2C,
|
||||||
HealFocusC,
|
HealChaScore4C,
|
||||||
ChgCharac,
|
ChgCharac,
|
||||||
ModDefenseSkill,
|
ModDefenseSkill,
|
||||||
ModDodgeSkill,
|
ModDodgeSkill,
|
||||||
|
@ -67,9 +67,9 @@ namespace POWERS
|
||||||
EndPower = ModMagicProtection,
|
EndPower = ModMagicProtection,
|
||||||
|
|
||||||
BeginAuras,
|
BeginAuras,
|
||||||
LifeAura = BeginAuras,
|
ChaScore1Aura = BeginAuras,
|
||||||
StaminaAura,
|
ChaScore2Aura,
|
||||||
SapAura,
|
ChaScore3Aura,
|
||||||
MeleeProtection,
|
MeleeProtection,
|
||||||
Umbrella,
|
Umbrella,
|
||||||
AntiMagicShield,
|
AntiMagicShield,
|
||||||
|
|
|
@ -44,8 +44,8 @@ TPropertyIndex DSPropertyENTITY_MOUNTED_ID = INVALID_PROPERTY_INDEX;
|
||||||
TPropertyIndex DSPropertyRIDER_ENTITY_ID = INVALID_PROPERTY_INDEX;
|
TPropertyIndex DSPropertyRIDER_ENTITY_ID = INVALID_PROPERTY_INDEX;
|
||||||
TPropertyIndex DSPropertyCELL = INVALID_PROPERTY_INDEX;
|
TPropertyIndex DSPropertyCELL = INVALID_PROPERTY_INDEX;
|
||||||
TPropertyIndex DSPropertyVISION_COUNTER = INVALID_PROPERTY_INDEX;
|
TPropertyIndex DSPropertyVISION_COUNTER = INVALID_PROPERTY_INDEX;
|
||||||
TPropertyIndex DSPropertyCURRENT_HIT_POINTS = INVALID_PROPERTY_INDEX;
|
TPropertyIndex DSPropertyCURRENT_ChaScore1 = INVALID_PROPERTY_INDEX;
|
||||||
TPropertyIndex DSPropertyMAX_HIT_POINTS = INVALID_PROPERTY_INDEX;
|
TPropertyIndex DSPropertyMAX_ChaScore1 = INVALID_PROPERTY_INDEX;
|
||||||
TPropertyIndex DSPropertyCURRENT_RUN_SPEED = INVALID_PROPERTY_INDEX;
|
TPropertyIndex DSPropertyCURRENT_RUN_SPEED = INVALID_PROPERTY_INDEX;
|
||||||
TPropertyIndex DSPropertyCURRENT_WALK_SPEED = INVALID_PROPERTY_INDEX;
|
TPropertyIndex DSPropertyCURRENT_WALK_SPEED = INVALID_PROPERTY_INDEX;
|
||||||
TPropertyIndex DSPropertyBEST_ROLE = INVALID_PROPERTY_INDEX;
|
TPropertyIndex DSPropertyBEST_ROLE = INVALID_PROPERTY_INDEX;
|
||||||
|
@ -137,8 +137,8 @@ void initRyzomVisualPropertyIndices( CMirroredDataSet& dataset )
|
||||||
assignProp( RIDER_ENTITY_ID, RiderEntity );
|
assignProp( RIDER_ENTITY_ID, RiderEntity );
|
||||||
assignProp( CELL, Cell );
|
assignProp( CELL, Cell );
|
||||||
assignProp( VISION_COUNTER, VisionCounter );
|
assignProp( VISION_COUNTER, VisionCounter );
|
||||||
assignProp( CURRENT_HIT_POINTS, CurrentHitPoints );
|
assignProp( CURRENT_ChaScore1, CurrentChaScore1 );
|
||||||
assignProp( MAX_HIT_POINTS, MaxHitPoints );
|
assignProp( MAX_ChaScore1, MaxChaScore1 );
|
||||||
assignProp( CURRENT_RUN_SPEED, CurrentRunSpeed );
|
assignProp( CURRENT_RUN_SPEED, CurrentRunSpeed );
|
||||||
assignProp( CURRENT_WALK_SPEED, CurrentWalkSpeed );
|
assignProp( CURRENT_WALK_SPEED, CurrentWalkSpeed );
|
||||||
assignProp( BEST_ROLE, BestRole );
|
assignProp( BEST_ROLE, BestRole );
|
||||||
|
|
|
@ -53,8 +53,8 @@ extern TPropertyIndex DSPropertyENTITY_MOUNTED_ID;
|
||||||
extern TPropertyIndex DSPropertyRIDER_ENTITY_ID;
|
extern TPropertyIndex DSPropertyRIDER_ENTITY_ID;
|
||||||
extern TPropertyIndex DSPropertyCELL;
|
extern TPropertyIndex DSPropertyCELL;
|
||||||
extern TPropertyIndex DSPropertyVISION_COUNTER;
|
extern TPropertyIndex DSPropertyVISION_COUNTER;
|
||||||
extern TPropertyIndex DSPropertyCURRENT_HIT_POINTS;
|
extern TPropertyIndex DSPropertyCURRENT_ChaScore1;
|
||||||
extern TPropertyIndex DSPropertyMAX_HIT_POINTS;
|
extern TPropertyIndex DSPropertyMAX_ChaScore1;
|
||||||
extern TPropertyIndex DSPropertyCURRENT_RUN_SPEED;
|
extern TPropertyIndex DSPropertyCURRENT_RUN_SPEED;
|
||||||
extern TPropertyIndex DSPropertyCURRENT_WALK_SPEED;
|
extern TPropertyIndex DSPropertyCURRENT_WALK_SPEED;
|
||||||
extern TPropertyIndex DSPropertyBEST_ROLE;
|
extern TPropertyIndex DSPropertyBEST_ROLE;
|
||||||
|
@ -109,8 +109,8 @@ void initRyzomVisualPropertyIndices( CMirroredDataSet& dataset );
|
||||||
#define TYPE_CELL sint32
|
#define TYPE_CELL sint32
|
||||||
#define TYPE_VISION_COUNTER uint8
|
#define TYPE_VISION_COUNTER uint8
|
||||||
|
|
||||||
#define TYPE_CURRENT_HIT_POINTS sint32
|
#define TYPE_CURRENT_ChaScore1 sint32
|
||||||
#define TYPE_MAX_HIT_POINTS sint32
|
#define TYPE_MAX_ChaScore1 sint32
|
||||||
#define TYPE_RUNSPEED float
|
#define TYPE_RUNSPEED float
|
||||||
#define TYPE_WALKSPEED float
|
#define TYPE_WALKSPEED float
|
||||||
#define TYPE_BEST_ROLE uint16
|
#define TYPE_BEST_ROLE uint16
|
||||||
|
|
|
@ -30,10 +30,10 @@ namespace SCORES
|
||||||
// The conversion table
|
// The conversion table
|
||||||
const CStringConversion<TScores>::CPair stringTable [] =
|
const CStringConversion<TScores>::CPair stringTable [] =
|
||||||
{
|
{
|
||||||
{ "HitPoints", hit_points },
|
{ "ChaScore1", cha_score1 },
|
||||||
{ "Stamina", stamina },
|
{ "ChaScore2", cha_score2 },
|
||||||
{ "Sap", sap },
|
{ "ChaScore3", cha_score3 },
|
||||||
{ "Focus", focus },
|
{ "ChaScore4", cha_score4 },
|
||||||
};
|
};
|
||||||
|
|
||||||
CStringConversion<TScores> conversion(stringTable, sizeof(stringTable) / sizeof(stringTable[0]), unknown);
|
CStringConversion<TScores> conversion(stringTable, sizeof(stringTable) / sizeof(stringTable[0]), unknown);
|
||||||
|
|
|
@ -27,10 +27,10 @@ namespace SCORES
|
||||||
{
|
{
|
||||||
enum TScores
|
enum TScores
|
||||||
{
|
{
|
||||||
hit_points = 0,
|
cha_score1 = 0,
|
||||||
stamina,
|
cha_score2,
|
||||||
sap,
|
cha_score3,
|
||||||
focus,
|
cha_score4,
|
||||||
|
|
||||||
NUM_SCORES,
|
NUM_SCORES,
|
||||||
unknown = NUM_SCORES
|
unknown = NUM_SCORES
|
||||||
|
|
|
@ -3145,13 +3145,13 @@ void CServerAnimationModule::onCharTargetReceived( NLNET::IModuleProxy *senderMo
|
||||||
if ( (animationProp & CAnimationProp::Alive) )
|
if ( (animationProp & CAnimationProp::Alive) )
|
||||||
{
|
{
|
||||||
|
|
||||||
if (args[0] == "ADD_HP") { CAiWrapper::getInstance().setHPLevel(rtNpc->EntityId, alias, 1); return; }
|
if (args[0] == "ADD_ChaScore1") { CAiWrapper::getInstance().setChaScore1Level(rtNpc->EntityId, alias, 1); return; }
|
||||||
|
|
||||||
if (args[0] == "KILL_NPC" && alived) { CAiWrapper::getInstance().setHPLevel(rtNpc->EntityId, alias, 0); return; }
|
if (args[0] == "KILL_NPC" && alived) { CAiWrapper::getInstance().setChaScore1Level(rtNpc->EntityId, alias, 0); return; }
|
||||||
if (args[0] == "ADD_HP") { CAiWrapper::getInstance().setHPLevel(rtNpc->EntityId, alias, 1); return; }
|
if (args[0] == "ADD_ChaScore1") { CAiWrapper::getInstance().setChaScore1Level(rtNpc->EntityId, alias, 1); return; }
|
||||||
|
|
||||||
if (args[0] == "GRP_KILL" && alived) { CAiWrapper::getInstance().setGrpHPLevel(rtNpc->EntityId, alias, 0); return; }
|
if (args[0] == "GRP_KILL" && alived) { CAiWrapper::getInstance().setGrpChaScore1Level(rtNpc->EntityId, alias, 0); return; }
|
||||||
if (args[0] == "GRP_HEAL") { CAiWrapper::getInstance().setGrpHPLevel(rtNpc->EntityId, alias, 1); return; }
|
if (args[0] == "GRP_HEAL") { CAiWrapper::getInstance().setGrpChaScore1Level(rtNpc->EntityId, alias, 1); return; }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -178,14 +178,14 @@
|
||||||
<ATOM Name="weight" Value="3"/>
|
<ATOM Name="weight" Value="3"/>
|
||||||
</STRUCT>
|
</STRUCT>
|
||||||
<STRUCT>
|
<STRUCT>
|
||||||
<ATOM Name="name" Value="CurrentHitPoints"/>
|
<ATOM Name="name" Value="CurrentChaScore1“/>
|
||||||
<ATOM Name="type" Value="sint32"/>
|
<ATOM Name="type" Value="sint32"/>
|
||||||
<ATOM Name="persistant" Value="true"/>
|
<ATOM Name="persistant" Value="true"/>
|
||||||
<ATOM Name="mirror" Value="true"/>
|
<ATOM Name="mirror" Value="true"/>
|
||||||
<ATOM Name="weight" Value="1"/>
|
<ATOM Name="weight" Value="1"/>
|
||||||
</STRUCT>
|
</STRUCT>
|
||||||
<STRUCT>
|
<STRUCT>
|
||||||
<ATOM Name="name" Value="MaxHitPoints"/>
|
<ATOM Name="name" Value="MaxChaScore1“/>
|
||||||
<ATOM Name="type" Value="sint32"/>
|
<ATOM Name="type" Value="sint32"/>
|
||||||
<ATOM Name="persistant" Value="false"/>
|
<ATOM Name="persistant" Value="false"/>
|
||||||
<ATOM Name="mirror" Value="true"/>
|
<ATOM Name="mirror" Value="true"/>
|
||||||
|
|
|
@ -415,22 +415,22 @@ void CAIS::update()
|
||||||
_FaunaDescriptionList.Bots.clear();
|
_FaunaDescriptionList.Bots.clear();
|
||||||
_FaunaDescriptionList.GrpAlias.clear();
|
_FaunaDescriptionList.GrpAlias.clear();
|
||||||
}
|
}
|
||||||
// send agglomerated hp changes
|
// send agglomerated ChaScore1 changes
|
||||||
if (!_CreatureChangeHPList.Entities.empty())
|
if (!_CreatureChangeChaScore1List.Entities.empty())
|
||||||
{
|
{
|
||||||
nlassert(_CreatureChangeHPList.Entities.size()==_CreatureChangeHPList.DeltaHp.size());
|
nlassert(_CreatureChangeChaScore1List.Entities.size()==_CreatureChangeChaScore1List.DeltaChaScore1.size());
|
||||||
_CreatureChangeHPList.send("EGS");
|
_CreatureChangeChaScore1List.send("EGS");
|
||||||
_CreatureChangeHPList.Entities.clear();
|
_CreatureChangeChaScore1List.Entities.clear();
|
||||||
_CreatureChangeHPList.DeltaHp.clear();
|
_CreatureChangeChaScore1List.DeltaChaScore1.clear();
|
||||||
}
|
}
|
||||||
if (!_CreatureChangeMaxHPList.Entities.empty())
|
if (!_CreatureChangeMaxChaScore1List.Entities.empty())
|
||||||
{
|
{
|
||||||
nlassert(_CreatureChangeMaxHPList.Entities.size()==_CreatureChangeMaxHPList.MaxHp.size());
|
nlassert(_CreatureChangeMaxChaScore1List.Entities.size()==_CreatureChangeMaxChaScore1List.MaxChaScore1.size());
|
||||||
nlassert(_CreatureChangeMaxHPList.Entities.size()==_CreatureChangeMaxHPList.SetFull.size());
|
nlassert(_CreatureChangeMaxChaScore1List.Entities.size()==_CreatureChangeMaxChaScore1List.SetFull.size());
|
||||||
_CreatureChangeMaxHPList.send("EGS");
|
_CreatureChangeMaxChaScore1List.send("EGS");
|
||||||
_CreatureChangeMaxHPList.Entities.clear();
|
_CreatureChangeMaxChaScore1List.Entities.clear();
|
||||||
_CreatureChangeMaxHPList.MaxHp.clear();
|
_CreatureChangeMaxChaScore1List.MaxChaScore1.clear();
|
||||||
_CreatureChangeMaxHPList.SetFull.clear();
|
_CreatureChangeMaxChaScore1List.SetFull.clear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -217,14 +217,14 @@ public:
|
||||||
{
|
{
|
||||||
return _FaunaDescriptionList;
|
return _FaunaDescriptionList;
|
||||||
}
|
}
|
||||||
CChangeCreatureHPMsg &getCreatureChangeHP()
|
CChangeCreatureChaScore1Msg &getCreatureChangeChaScore1()
|
||||||
{
|
{
|
||||||
return _CreatureChangeHPList;
|
return _CreatureChangeChaScore1List;
|
||||||
}
|
}
|
||||||
|
|
||||||
CChangeCreatureMaxHPMsg &getCreatureChangeMaxHP()
|
CChangeCreatureMaxChaScore1Msg &getCreatureChangeMaxChaScore1()
|
||||||
{
|
{
|
||||||
return _CreatureChangeMaxHPList;
|
return _CreatureChangeMaxChaScore1List;
|
||||||
}
|
}
|
||||||
|
|
||||||
enum TSearchType
|
enum TSearchType
|
||||||
|
@ -292,8 +292,8 @@ private:
|
||||||
|
|
||||||
// Faunas descriptions to be sent each frame
|
// Faunas descriptions to be sent each frame
|
||||||
CFaunaBotDescription _FaunaDescriptionList;
|
CFaunaBotDescription _FaunaDescriptionList;
|
||||||
CChangeCreatureHPMsg _CreatureChangeHPList;
|
CChangeCreatureChaScore1Msg _CreatureChangeChaScore1List;
|
||||||
CChangeCreatureMaxHPMsg _CreatureChangeMaxHPList;
|
CChangeCreatureMaxChaScore1Msg _CreatureChangeMaxChaScore1List;
|
||||||
|
|
||||||
/// The emot identifiers
|
/// The emot identifiers
|
||||||
std::map<std::string, uint32> _EmotNames;
|
std::map<std::string, uint32> _EmotNames;
|
||||||
|
|
|
@ -350,13 +350,13 @@ void CSpawnBot::sendInfoToEGS() const
|
||||||
if (!EGSHasMirrorReady)
|
if (!EGSHasMirrorReady)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
const uint32& maxHp = getPersistent().getCustomMaxHp();
|
const uint32& maxChaScore1 = getPersistent().getCustomMaxChaScore1();
|
||||||
if (maxHp > 0.f)
|
if (maxChaScore1 > 0.f)
|
||||||
{
|
{
|
||||||
CChangeCreatureMaxHPMsg& msgList = CAIS::instance().getCreatureChangeMaxHP();
|
CChangeCreatureMaxChaScore1Msg& msgList = CAIS::instance().getCreatureChangeMaxChaScore1();
|
||||||
|
|
||||||
msgList.Entities.push_back(dataSetRow());
|
msgList.Entities.push_back(dataSetRow());
|
||||||
msgList.MaxHp.push_back((uint32)(maxHp));
|
msgList.MaxChaScore1.push_back((uint32)(maxChaScore1));
|
||||||
msgList.SetFull.push_back((uint8)(1));
|
msgList.SetFull.push_back((uint8)(1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -377,7 +377,7 @@ CBot::CBot(CGroup* owner, CAIAliasDescriptionNode* alias)
|
||||||
, _SetSheetData(NULL)
|
, _SetSheetData(NULL)
|
||||||
, _Observers(NULL)
|
, _Observers(NULL)
|
||||||
, _ProfileData(NULL)
|
, _ProfileData(NULL)
|
||||||
, _CustomMaxHp(0)
|
, _CustomMaxChaScore1(0)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -392,7 +392,7 @@ CBot::CBot(CGroup* owner, uint32 alias, std::string const& name)
|
||||||
, _SetSheetData(NULL)
|
, _SetSheetData(NULL)
|
||||||
, _Observers(NULL)
|
, _Observers(NULL)
|
||||||
, _ProfileData(NULL)
|
, _ProfileData(NULL)
|
||||||
, _CustomMaxHp(0.f)
|
, _CustomMaxChaScore1(0.f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -257,8 +257,8 @@ public:
|
||||||
const ucstring& getCustomName() const { return _CustomName; }
|
const ucstring& getCustomName() const { return _CustomName; }
|
||||||
void setCustomName(const ucstring &name) { _CustomName = name; }
|
void setCustomName(const ucstring &name) { _CustomName = name; }
|
||||||
|
|
||||||
const uint32& getCustomMaxHp() const { return _CustomMaxHp; }
|
const uint32& getCustomMaxChaScore1() const { return _CustomMaxChaScore1; }
|
||||||
void setCustomMaxHp(const uint32 &maxHp) { _CustomMaxHp = maxHp; }
|
void setCustomMaxChaScore1(const uint32 &maxChaScore1) { _CustomMaxChaScore1 = maxChaScore1; }
|
||||||
|
|
||||||
virtual void setClientSheet(const std::string & clientSheetName);
|
virtual void setClientSheet(const std::string & clientSheetName);
|
||||||
|
|
||||||
|
@ -290,7 +290,7 @@ private:
|
||||||
bool _Healer;
|
bool _Healer;
|
||||||
bool _BuildingBot;
|
bool _BuildingBot;
|
||||||
ucstring _CustomName;
|
ucstring _CustomName;
|
||||||
uint32 _CustomMaxHp;
|
uint32 _CustomMaxChaScore1;
|
||||||
CTimer _SetSheetTimer;
|
CTimer _SetSheetTimer;
|
||||||
struct CSetSheetData
|
struct CSetSheetData
|
||||||
{
|
{
|
||||||
|
|
|
@ -501,7 +501,7 @@ void CSpawnBotFauna::getBestTarget()
|
||||||
if ( canMove()
|
if ( canMove()
|
||||||
&& !player->isAggressive()
|
&& !player->isAggressive()
|
||||||
&& entity->wpos().isValid()
|
&& entity->wpos().isValid()
|
||||||
&& isPlaceAllowed(entity->getAStarFlag(), entity->wpos().getFlags()))
|
&& (entity->wpos().getFlags()&entity->getAStarFlag())==0)
|
||||||
{
|
{
|
||||||
// Suppose we can go to him
|
// Suppose we can go to him
|
||||||
bool canChange = true;
|
bool canChange = true;
|
||||||
|
@ -676,7 +676,7 @@ void CSpawnBotFauna::getBestTarget()
|
||||||
if (runSpeed()>entity->runSpeed())
|
if (runSpeed()>entity->runSpeed())
|
||||||
{
|
{
|
||||||
// got enought life ? (more than 75%).
|
// got enought life ? (more than 75%).
|
||||||
if ((4*currentHitPoints())>(3*maxHitPoints()))
|
if ((4*currentChaScore1())>(3*maxChaScore1()))
|
||||||
{
|
{
|
||||||
// check if the herbivore is in the current place
|
// check if the herbivore is in the current place
|
||||||
const CAIPlace *place=spawnGrp().targetPlace();
|
const CAIPlace *place=spawnGrp().targetPlace();
|
||||||
|
@ -706,7 +706,7 @@ void CSpawnBotFauna::getBestTarget()
|
||||||
if ( profile
|
if ( profile
|
||||||
&& profile->getAIProfileType()==ACTIVITY_CORPSE
|
&& profile->getAIProfileType()==ACTIVITY_CORPSE
|
||||||
&& botCreat->wpos().isValid()
|
&& botCreat->wpos().isValid()
|
||||||
&& isPlaceAllowed(botCreat->getAStarFlag(), botCreat->wpos().getFlags())
|
&& !(botCreat->wpos().getFlags()&botCreat->getAStarFlag())
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
CCorpseFaunaProfile *corpseProfile=NLMISC::safe_cast<CCorpseFaunaProfile*>(profile);
|
CCorpseFaunaProfile *corpseProfile=NLMISC::safe_cast<CCorpseFaunaProfile*>(profile);
|
||||||
|
@ -951,7 +951,7 @@ void CMovementMagnet::getNewDestination(RYAI_MAP_CRUNCH::CWorldPosition const& a
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if ( !faunaBot->wpos().isValid()
|
if ( !faunaBot->wpos().isValid()
|
||||||
|| !isPlaceAllowed(denyFlag, faunaBot->wpos().getFlags()))
|
|| (faunaBot->wpos().getFlags()&denyFlag)!=0)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
// can be optimize by in avoid inversion.
|
// can be optimize by in avoid inversion.
|
||||||
|
@ -990,7 +990,7 @@ void CMovementMagnet::getNewDestination(RYAI_MAP_CRUNCH::CWorldPosition const& a
|
||||||
|
|
||||||
// check if its a nogo and water proof position.
|
// check if its a nogo and water proof position.
|
||||||
if ( !wRndPos.isValid()
|
if ( !wRndPos.isValid()
|
||||||
|| !isPlaceAllowed(denyFlag, wRndPos.getTopologyRef().getCstTopologyNode().getFlags()))
|
|| (wRndPos.getTopologyRef().getCstTopologyNode().getFlags()&denyFlag)!=0 )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
#if !FINAL_VERSION
|
#if !FINAL_VERSION
|
||||||
|
@ -1126,7 +1126,7 @@ CReturnMovementMagnet::CReturnMovementMagnet(RYAI_MAP_CRUNCH::CWorldPosition con
|
||||||
|
|
||||||
void CReturnMovementMagnet::getNewDestination(RYAI_MAP_CRUNCH::CWorldPosition const& alternativePos, RYAI_MAP_CRUNCH::TAStarFlag denyFlag)
|
void CReturnMovementMagnet::getNewDestination(RYAI_MAP_CRUNCH::CWorldPosition const& alternativePos, RYAI_MAP_CRUNCH::TAStarFlag denyFlag)
|
||||||
{
|
{
|
||||||
if (_ForcedDest.isValid() && isPlaceAllowed(denyFlag, _ForcedDest.getTopologyRef().getCstTopologyNode().getFlags()))
|
if (_ForcedDest.isValid() && (_ForcedDest.getTopologyRef().getCstTopologyNode().getFlags()&denyFlag)==0)
|
||||||
_PathCont.setDestination(_ForcedDest);
|
_PathCont.setDestination(_ForcedDest);
|
||||||
else
|
else
|
||||||
CMovementMagnet::getNewDestination(alternativePos, denyFlag);
|
CMovementMagnet::getNewDestination(alternativePos, denyFlag);
|
||||||
|
|
|
@ -46,7 +46,7 @@ static bool VerboseLog = false;
|
||||||
CSpawnBotNpc::CSpawnBotNpc(TDataSetRow const& row, CBot& owner, NLMISC::CEntityId const& id, float radius, uint32 level, RYAI_MAP_CRUNCH::TAStarFlag denyFlags)
|
CSpawnBotNpc::CSpawnBotNpc(TDataSetRow const& row, CBot& owner, NLMISC::CEntityId const& id, float radius, uint32 level, RYAI_MAP_CRUNCH::TAStarFlag denyFlags)
|
||||||
: CSpawnBot(row, owner, id, radius, level, denyFlags)
|
: CSpawnBot(row, owner, id, radius, level, denyFlags)
|
||||||
{
|
{
|
||||||
_OldHpPercentage = -1.f;
|
_OldChaScore1Percentage = -1.f;
|
||||||
_NbCurrentDynChats = 0;
|
_NbCurrentDynChats = 0;
|
||||||
_FacingTheta = 0;
|
_FacingTheta = 0;
|
||||||
_FacingTick = 0;
|
_FacingTick = 0;
|
||||||
|
@ -115,22 +115,22 @@ void CSpawnBotNpc::processEvent(CCombatInterface::CEvent const& event)
|
||||||
++AISStat::BotNpcUpdCtr;
|
++AISStat::BotNpcUpdCtr;
|
||||||
|
|
||||||
{
|
{
|
||||||
H_AUTO(AIHpTrig);
|
H_AUTO(AIChaScore1Trig);
|
||||||
// Fix for HP triggers
|
// Fix for ChaScore1 triggers
|
||||||
// :FIXME: Clean that triggering stuff, make it generic
|
// :FIXME: Clean that triggering stuff, make it generic
|
||||||
CGroupNpc& persGrp = spawnGrp().getPersistent();
|
CGroupNpc& persGrp = spawnGrp().getPersistent();
|
||||||
if (persGrp.haveHpTriggers())
|
if (persGrp.haveChaScore1Triggers())
|
||||||
{
|
{
|
||||||
float newHpPercentage = getPhysical().hpPercentage();
|
float newChaScore1Percentage = getPhysical().ChaScore1Percentage();
|
||||||
if (_OldHpPercentage>=0.f && newHpPercentage!=_OldHpPercentage)
|
if (_OldChaScore1Percentage>=0.f && newChaScore1Percentage!=_OldChaScore1Percentage)
|
||||||
{
|
{
|
||||||
persGrp.hpTriggerCb(_OldHpPercentage, newHpPercentage);
|
persGrp.ChaScore1TriggerCb(_OldChaScore1Percentage, newChaScore1Percentage);
|
||||||
}
|
}
|
||||||
_OldHpPercentage = newHpPercentage;
|
_OldChaScore1Percentage = newChaScore1Percentage;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_OldHpPercentage = getPhysical().hpPercentage();
|
_OldChaScore1Percentage = getPhysical().ChaScore1Percentage();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -101,7 +101,7 @@ public:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::vector<CBotPlayer*> _ActiveChats; // vector of ptrs to players currently chatting with bot
|
std::vector<CBotPlayer*> _ActiveChats; // vector of ptrs to players currently chatting with bot
|
||||||
float _OldHpPercentage; // Fix for HP triggers
|
float _OldChaScore1Percentage; // Fix for ChaScore1 triggers
|
||||||
|
|
||||||
CNpcChatProfileImp _CurrentChatProfile;
|
CNpcChatProfileImp _CurrentChatProfile;
|
||||||
sint32 _NbCurrentDynChats;
|
sint32 _NbCurrentDynChats;
|
||||||
|
|
|
@ -234,7 +234,7 @@ public:
|
||||||
CAICoord const& y() const { return _pos.y(); }
|
CAICoord const& y() const { return _pos.y(); }
|
||||||
sint32 h() const { return _pos.h(); }
|
sint32 h() const { return _pos.h(); }
|
||||||
CAngle theta() const { return _pos.theta(); }
|
CAngle theta() const { return _pos.theta(); }
|
||||||
float hpPercentage() const { return (float)currentHitPoints()/(float)maxHitPoints(); }
|
float ChaScore1Percentage() const { return (float)currentChaScore1()/(float)maxChaScore1(); }
|
||||||
TDataSetRow const& dataSetRow() const { return _dataSetRow; }
|
TDataSetRow const& dataSetRow() const { return _dataSetRow; }
|
||||||
uint32 level() const { return _Level; }
|
uint32 level() const { return _Level; }
|
||||||
RYAI_MAP_CRUNCH::CWorldPosition const& wpos() const { return _wpos; }
|
RYAI_MAP_CRUNCH::CWorldPosition const& wpos() const { return _wpos; }
|
||||||
|
@ -244,8 +244,8 @@ public:
|
||||||
|
|
||||||
/// @name Mirror accessors
|
/// @name Mirror accessors
|
||||||
//@{
|
//@{
|
||||||
TYPE_CURRENT_HIT_POINTS currentHitPoints() const { return _CurrentHitPoint(); }
|
TYPE_CURRENT_ChaScore1 currentChaScore1() const { return _CurrentChaScore1(); }
|
||||||
TYPE_MAX_HIT_POINTS maxHitPoints() const { return _MaxHitPoint(); }
|
TYPE_MAX_ChaScore1 maxChaScore1() const { return _MaxChaScore1(); }
|
||||||
TYPE_VISION_COUNTER currentVisionCounter() const { return _VisionCounter(); }
|
TYPE_VISION_COUNTER currentVisionCounter() const { return _VisionCounter(); }
|
||||||
bool havePlayersAround() const;
|
bool havePlayersAround() const;
|
||||||
|
|
||||||
|
@ -345,8 +345,8 @@ private:
|
||||||
CMirrorPropValueRO<float> _RunSpeed;
|
CMirrorPropValueRO<float> _RunSpeed;
|
||||||
CMirrorPropValueRO<float> _WalkSpeed;
|
CMirrorPropValueRO<float> _WalkSpeed;
|
||||||
|
|
||||||
CMirrorPropValueRO<TYPE_CURRENT_HIT_POINTS> _CurrentHitPoint;
|
CMirrorPropValueRO<TYPE_CURRENT_ChaScore1> _CurrentChaScore1;
|
||||||
CMirrorPropValueRO<TYPE_MAX_HIT_POINTS> _MaxHitPoint;
|
CMirrorPropValueRO<TYPE_MAX_ChaScore1> _MaxChaScore1;
|
||||||
CMirrorPropValueRO<TYPE_VISION_COUNTER> _VisionCounter;
|
CMirrorPropValueRO<TYPE_VISION_COUNTER> _VisionCounter;
|
||||||
CMirrorPropValue<TYPE_IN_OUTPOST_ZONE_ALIAS> _InOutpostAlias;
|
CMirrorPropValue<TYPE_IN_OUTPOST_ZONE_ALIAS> _InOutpostAlias;
|
||||||
CMirrorPropValue<TYPE_IN_OUTPOST_ZONE_SIDE> _InOutpostSide;
|
CMirrorPropValue<TYPE_IN_OUTPOST_ZONE_SIDE> _InOutpostSide;
|
||||||
|
|
|
@ -64,8 +64,8 @@ CAIEntityPhysical::CAIEntityPhysical(CPersistentOfPhysical& owner, TDataSetRow c
|
||||||
_RunSpeed.init (*CMirrors::DataSet, entityIndex, DSPropertyCURRENT_RUN_SPEED);
|
_RunSpeed.init (*CMirrors::DataSet, entityIndex, DSPropertyCURRENT_RUN_SPEED);
|
||||||
_WalkSpeed.init (*CMirrors::DataSet, entityIndex, DSPropertyCURRENT_WALK_SPEED);
|
_WalkSpeed.init (*CMirrors::DataSet, entityIndex, DSPropertyCURRENT_WALK_SPEED);
|
||||||
|
|
||||||
_CurrentHitPoint.init (*CMirrors::DataSet, entityIndex, DSPropertyCURRENT_HIT_POINTS);
|
_CurrentChaScore1.init (*CMirrors::DataSet, entityIndex, DSPropertyCURRENT_ChaScore1);
|
||||||
_MaxHitPoint.init (*CMirrors::DataSet, entityIndex, DSPropertyMAX_HIT_POINTS);
|
_MaxChaScore1.init (*CMirrors::DataSet, entityIndex, DSPropertyMAX_ChaScore1);
|
||||||
_VisionCounter.init (*CMirrors::DataSet, entityIndex, DSPropertyVISION_COUNTER);
|
_VisionCounter.init (*CMirrors::DataSet, entityIndex, DSPropertyVISION_COUNTER);
|
||||||
_InOutpostAlias.init (*CMirrors::DataSet, entityIndex, DSPropertyIN_OUTPOST_ZONE_ALIAS);
|
_InOutpostAlias.init (*CMirrors::DataSet, entityIndex, DSPropertyIN_OUTPOST_ZONE_ALIAS);
|
||||||
_InOutpostSide.init (*CMirrors::DataSet, entityIndex, DSPropertyIN_OUTPOST_ZONE_SIDE);
|
_InOutpostSide.init (*CMirrors::DataSet, entityIndex, DSPropertyIN_OUTPOST_ZONE_SIDE);
|
||||||
|
|
|
@ -309,7 +309,7 @@ void CBotProfileFlee::updateProfile(uint ticksSinceLastUpdate)
|
||||||
{
|
{
|
||||||
RYAI_MAP_CRUNCH::CWorldPosition wpos=rootCell->getWorldPosition(_Bot->getPersistent().getChildIndex()&3);
|
RYAI_MAP_CRUNCH::CWorldPosition wpos=rootCell->getWorldPosition(_Bot->getPersistent().getChildIndex()&3);
|
||||||
if ( wpos.isValid()
|
if ( wpos.isValid()
|
||||||
&& isPlaceAllowed(_DenyFlags, wpos.getFlags())) // verify that we got some compatible flags ..
|
&& (wpos.getFlags()&_DenyFlags)==0 ) // verify that we got some compatible flags ..
|
||||||
{
|
{
|
||||||
_LastDir=startDir;
|
_LastDir=startDir;
|
||||||
_LastStartPos=_Bot->wpos();
|
_LastStartPos=_Bot->wpos();
|
||||||
|
@ -378,12 +378,12 @@ bool CFightOrganizer::healIteration(CBot* bot, CBot* otherBot)
|
||||||
CSpawnBot* otherSpBot = otherBot->getSpawnObj();
|
CSpawnBot* otherSpBot = otherBot->getSpawnObj();
|
||||||
if (spBot && otherSpBot && otherSpBot->isAlive())
|
if (spBot && otherSpBot && otherSpBot->isAlive())
|
||||||
{
|
{
|
||||||
float hp = otherSpBot->hpPercentage();
|
float ChaScore1 = otherSpBot->ChaScore1Percentage();
|
||||||
int neededHealers = 0;
|
int neededHealers = 0;
|
||||||
if (hp<.90f) ++neededHealers;
|
if (ChaScore1<.90f) ++neededHealers;
|
||||||
if (hp<.75f) ++neededHealers;
|
if (ChaScore1<.75f) ++neededHealers;
|
||||||
if (hp<.50f) ++neededHealers;
|
if (ChaScore1<.50f) ++neededHealers;
|
||||||
if (hp<.25f) ++neededHealers;
|
if (ChaScore1<.25f) ++neededHealers;
|
||||||
if (neededHealers > otherSpBot->getHealerCount())
|
if (neededHealers > otherSpBot->getHealerCount())
|
||||||
{
|
{
|
||||||
IAIProfile* profile = spBot->getAIProfile();
|
IAIProfile* profile = spBot->getAIProfile();
|
||||||
|
|
|
@ -374,7 +374,7 @@ bool s_move(
|
||||||
0.5f);
|
0.5f);
|
||||||
// If we can't follow the path or the computed pos is invalid
|
// If we can't follow the path or the computed pos is invalid
|
||||||
if ( status==CFollowPath::FOLLOW_NO_PATH
|
if ( status==CFollowPath::FOLLOW_NO_PATH
|
||||||
|| (_Bot->wpos().isValid() && !isPlaceAllowed(_Bot->getAStarFlag(), _Bot->wpos().getFlags())))
|
|| (_Bot->wpos().isValid() && (_Bot->wpos().getFlags()&_Bot->getAStarFlag())!=0))
|
||||||
{
|
{
|
||||||
// Restore position
|
// Restore position
|
||||||
_Bot->setPos(lastPos);
|
_Bot->setPos(lastPos);
|
||||||
|
@ -534,7 +534,7 @@ static void s_updateProfile(
|
||||||
target = _Bot->getTarget();
|
target = _Bot->getTarget();
|
||||||
}
|
}
|
||||||
// Assert target is valid and alive
|
// Assert target is valid and alive
|
||||||
if (!target || !target->isAlive() || (heal && target->hpPercentage()>.9f))
|
if (!target || !target->isAlive() || (heal && target->ChaScore1Percentage()>.9f))
|
||||||
{
|
{
|
||||||
// If we are hitting an invalid or dead target just wait we finish hitting, else disengage
|
// If we are hitting an invalid or dead target just wait we finish hitting, else disengage
|
||||||
if (!_Bot->isHitting())
|
if (!_Bot->isHitting())
|
||||||
|
@ -605,7 +605,7 @@ static void s_updateProfile(
|
||||||
_AtAttackDist = norm < _RangeMax;
|
_AtAttackDist = norm < _RangeMax;
|
||||||
|
|
||||||
// Check if target can be attacked
|
// Check if target can be attacked
|
||||||
bool const targetInForbiddenZone = ((!target->wpos().isValid())||!isPlaceAllowed(_Bot->getAStarFlag(), target->wpos().getFlags()));
|
bool const targetInForbiddenZone = ((!target->wpos().isValid())||(target->wpos().getFlags()&_Bot->getAStarFlag())!=0);
|
||||||
|
|
||||||
/****************************************************************************/
|
/****************************************************************************/
|
||||||
/* Profile main processing */
|
/* Profile main processing */
|
||||||
|
|
|
@ -726,17 +726,17 @@ void CGroupNpc::addParameter(std::string const& parameter)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::addHpUpTrigger(float threshold, int eventId)
|
void CGroupNpc::addChaScore1UpTrigger(float threshold, int eventId)
|
||||||
{
|
{
|
||||||
_hpUpTriggers.insert(std::make_pair(threshold, eventId));
|
_ChaScore1UpTriggers.insert(std::make_pair(threshold, eventId));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::delHpUpTrigger(float threshold, int eventId)
|
void CGroupNpc::delChaScore1UpTrigger(float threshold, int eventId)
|
||||||
{
|
{
|
||||||
CGroupNpc::THpTriggerList& hpTriggers = _hpUpTriggers;
|
CGroupNpc::TChaScore1TriggerList& ChaScore1Triggers = _ChaScore1UpTriggers;
|
||||||
CGroupNpc::THpTriggerList::iterator first, last, trigger;
|
CGroupNpc::TChaScore1TriggerList::iterator first, last, trigger;
|
||||||
first = hpTriggers.lower_bound(threshold);
|
first = ChaScore1Triggers.lower_bound(threshold);
|
||||||
last = hpTriggers.upper_bound(threshold);
|
last = ChaScore1Triggers.upper_bound(threshold);
|
||||||
|
|
||||||
for (; first!=last; ++first)
|
for (; first!=last; ++first)
|
||||||
{
|
{
|
||||||
|
@ -744,20 +744,20 @@ void CGroupNpc::delHpUpTrigger(float threshold, int eventId)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (first!=last)
|
if (first!=last)
|
||||||
hpTriggers.erase(first);
|
ChaScore1Triggers.erase(first);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::addHpDownTrigger(float threshold, int eventId)
|
void CGroupNpc::addChaScore1DownTrigger(float threshold, int eventId)
|
||||||
{
|
{
|
||||||
_hpDownTriggers.insert(std::make_pair(threshold, eventId));
|
_ChaScore1DownTriggers.insert(std::make_pair(threshold, eventId));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::delHpDownTrigger(float threshold, int eventId)
|
void CGroupNpc::delChaScore1DownTrigger(float threshold, int eventId)
|
||||||
{
|
{
|
||||||
CGroupNpc::THpTriggerList& hpTriggers = _hpDownTriggers;
|
CGroupNpc::TChaScore1TriggerList& ChaScore1Triggers = _ChaScore1DownTriggers;
|
||||||
CGroupNpc::THpTriggerList::iterator first, last, trigger;
|
CGroupNpc::TChaScore1TriggerList::iterator first, last, trigger;
|
||||||
first = hpTriggers.lower_bound(threshold);
|
first = ChaScore1Triggers.lower_bound(threshold);
|
||||||
last = hpTriggers.upper_bound(threshold);
|
last = ChaScore1Triggers.upper_bound(threshold);
|
||||||
|
|
||||||
for (; first!=last; ++first)
|
for (; first!=last; ++first)
|
||||||
{
|
{
|
||||||
|
@ -765,20 +765,20 @@ void CGroupNpc::delHpDownTrigger(float threshold, int eventId)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (first!=last)
|
if (first!=last)
|
||||||
hpTriggers.erase(first);
|
ChaScore1Triggers.erase(first);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::addHpUpTrigger(float threshold, std::string cbFunc)
|
void CGroupNpc::addChaScore1UpTrigger(float threshold, std::string cbFunc)
|
||||||
{
|
{
|
||||||
_hpUpTriggers2.insert(std::make_pair(threshold, cbFunc));
|
_ChaScore1UpTriggers2.insert(std::make_pair(threshold, cbFunc));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::delHpUpTrigger(float threshold, std::string cbFunc)
|
void CGroupNpc::delChaScore1UpTrigger(float threshold, std::string cbFunc)
|
||||||
{
|
{
|
||||||
CGroupNpc::THpTriggerList2& hpTriggers = _hpUpTriggers2;
|
CGroupNpc::TChaScore1TriggerList2& ChaScore1Triggers = _ChaScore1UpTriggers2;
|
||||||
CGroupNpc::THpTriggerList2::iterator first, last, trigger;
|
CGroupNpc::TChaScore1TriggerList2::iterator first, last, trigger;
|
||||||
first = hpTriggers.lower_bound(threshold);
|
first = ChaScore1Triggers.lower_bound(threshold);
|
||||||
last = hpTriggers.upper_bound(threshold);
|
last = ChaScore1Triggers.upper_bound(threshold);
|
||||||
|
|
||||||
for (; first!=last; ++first)
|
for (; first!=last; ++first)
|
||||||
{
|
{
|
||||||
|
@ -786,20 +786,20 @@ void CGroupNpc::delHpUpTrigger(float threshold, std::string cbFunc)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (first!=last)
|
if (first!=last)
|
||||||
hpTriggers.erase(first);
|
ChaScore1Triggers.erase(first);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::addHpDownTrigger(float threshold, std::string cbFunc)
|
void CGroupNpc::addChaScore1DownTrigger(float threshold, std::string cbFunc)
|
||||||
{
|
{
|
||||||
_hpDownTriggers2.insert(std::make_pair(threshold, cbFunc));
|
_ChaScore1DownTriggers2.insert(std::make_pair(threshold, cbFunc));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::delHpDownTrigger(float threshold, std::string cbFunc)
|
void CGroupNpc::delChaScore1DownTrigger(float threshold, std::string cbFunc)
|
||||||
{
|
{
|
||||||
CGroupNpc::THpTriggerList2& hpTriggers = _hpDownTriggers2;
|
CGroupNpc::TChaScore1TriggerList2& ChaScore1Triggers = _ChaScore1DownTriggers2;
|
||||||
CGroupNpc::THpTriggerList2::iterator first, last, trigger;
|
CGroupNpc::TChaScore1TriggerList2::iterator first, last, trigger;
|
||||||
first = hpTriggers.lower_bound(threshold);
|
first = ChaScore1Triggers.lower_bound(threshold);
|
||||||
last = hpTriggers.upper_bound(threshold);
|
last = ChaScore1Triggers.upper_bound(threshold);
|
||||||
|
|
||||||
for (; first!=last; ++first)
|
for (; first!=last; ++first)
|
||||||
{
|
{
|
||||||
|
@ -807,30 +807,30 @@ void CGroupNpc::delHpDownTrigger(float threshold, std::string cbFunc)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (first!=last)
|
if (first!=last)
|
||||||
hpTriggers.erase(first);
|
ChaScore1Triggers.erase(first);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CGroupNpc::haveHpTriggers()
|
bool CGroupNpc::haveChaScore1Triggers()
|
||||||
{
|
{
|
||||||
return (_hpUpTriggers.size()+_hpDownTriggers.size()+_hpUpTriggers2.size()+_hpDownTriggers2.size())>0;
|
return (_ChaScore1UpTriggers.size()+_ChaScore1DownTriggers.size()+_ChaScore1UpTriggers2.size()+_ChaScore1DownTriggers2.size())>0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGroupNpc::hpTriggerCb(float oldVal, float newVal)
|
void CGroupNpc::ChaScore1TriggerCb(float oldVal, float newVal)
|
||||||
{
|
{
|
||||||
if (newVal>oldVal)
|
if (newVal>oldVal)
|
||||||
{
|
{
|
||||||
CGroupNpc::THpTriggerList::const_iterator first, last, trigger, triggerProcessed;
|
CGroupNpc::TChaScore1TriggerList::const_iterator first, last, trigger, triggerProcessed;
|
||||||
first = _hpUpTriggers.upper_bound(oldVal);
|
first = _ChaScore1UpTriggers.upper_bound(oldVal);
|
||||||
last = _hpUpTriggers.upper_bound(newVal);
|
last = _ChaScore1UpTriggers.upper_bound(newVal);
|
||||||
for (trigger=first; trigger!=last;)
|
for (trigger=first; trigger!=last;)
|
||||||
{
|
{
|
||||||
triggerProcessed = trigger;
|
triggerProcessed = trigger;
|
||||||
++trigger;
|
++trigger;
|
||||||
processStateEvent(getEventContainer().EventUserEvent[triggerProcessed->second]);
|
processStateEvent(getEventContainer().EventUserEvent[triggerProcessed->second]);
|
||||||
}
|
}
|
||||||
CGroupNpc::THpTriggerList2::const_iterator first2, last2, trigger2, triggerProcessed2;
|
CGroupNpc::TChaScore1TriggerList2::const_iterator first2, last2, trigger2, triggerProcessed2;
|
||||||
first2 = _hpUpTriggers2.upper_bound(oldVal);
|
first2 = _ChaScore1UpTriggers2.upper_bound(oldVal);
|
||||||
last2 = _hpUpTriggers2.upper_bound(newVal);
|
last2 = _ChaScore1UpTriggers2.upper_bound(newVal);
|
||||||
for (trigger2=first2; trigger2!=last2;)
|
for (trigger2=first2; trigger2!=last2;)
|
||||||
{
|
{
|
||||||
triggerProcessed2 = trigger2;
|
triggerProcessed2 = trigger2;
|
||||||
|
@ -840,18 +840,18 @@ void CGroupNpc::hpTriggerCb(float oldVal, float newVal)
|
||||||
}
|
}
|
||||||
if (newVal<oldVal)
|
if (newVal<oldVal)
|
||||||
{
|
{
|
||||||
CGroupNpc::THpTriggerList::const_iterator first, last, trigger, triggerProcessed;
|
CGroupNpc::TChaScore1TriggerList::const_iterator first, last, trigger, triggerProcessed;
|
||||||
first = _hpDownTriggers.lower_bound(newVal);
|
first = _ChaScore1DownTriggers.lower_bound(newVal);
|
||||||
last = _hpDownTriggers.lower_bound(oldVal);
|
last = _ChaScore1DownTriggers.lower_bound(oldVal);
|
||||||
for (trigger=first; trigger!=last;)
|
for (trigger=first; trigger!=last;)
|
||||||
{
|
{
|
||||||
triggerProcessed = trigger;
|
triggerProcessed = trigger;
|
||||||
++trigger;
|
++trigger;
|
||||||
processStateEvent(getEventContainer().EventUserEvent[triggerProcessed->second]);
|
processStateEvent(getEventContainer().EventUserEvent[triggerProcessed->second]);
|
||||||
}
|
}
|
||||||
CGroupNpc::THpTriggerList2::const_iterator first2, last2, trigger2, triggerProcessed2;
|
CGroupNpc::TChaScore1TriggerList2::const_iterator first2, last2, trigger2, triggerProcessed2;
|
||||||
first2 = _hpDownTriggers2.lower_bound(newVal);
|
first2 = _ChaScore1DownTriggers2.lower_bound(newVal);
|
||||||
last2 = _hpDownTriggers2.lower_bound(oldVal);
|
last2 = _ChaScore1DownTriggers2.lower_bound(oldVal);
|
||||||
for (trigger2=first2; trigger2!=last2;)
|
for (trigger2=first2; trigger2!=last2;)
|
||||||
{
|
{
|
||||||
triggerProcessed2 = trigger2;
|
triggerProcessed2 = trigger2;
|
||||||
|
|
|
@ -201,18 +201,18 @@ public:
|
||||||
AITYPES::CPropertySetWithExtraList<TAllianceId> const& friendFaction() const { return _friendFaction; }
|
AITYPES::CPropertySetWithExtraList<TAllianceId> const& friendFaction() const { return _friendFaction; }
|
||||||
|
|
||||||
public:
|
public:
|
||||||
void addHpUpTrigger(float threshold, int eventId);
|
void addChaScore1UpTrigger(float threshold, int eventId);
|
||||||
void delHpUpTrigger(float threshold, int eventId);
|
void delChaScore1UpTrigger(float threshold, int eventId);
|
||||||
void addHpUpTrigger(float threshold, std::string cbFunc);
|
void addChaScore1UpTrigger(float threshold, std::string cbFunc);
|
||||||
void delHpUpTrigger(float threshold, std::string cbFunc);
|
void delChaScore1UpTrigger(float threshold, std::string cbFunc);
|
||||||
|
|
||||||
void addHpDownTrigger(float threshold, int eventId);
|
void addChaScore1DownTrigger(float threshold, int eventId);
|
||||||
void delHpDownTrigger(float threshold, int eventId);
|
void delChaScore1DownTrigger(float threshold, int eventId);
|
||||||
void addHpDownTrigger(float threshold, std::string cbFunc);
|
void addChaScore1DownTrigger(float threshold, std::string cbFunc);
|
||||||
void delHpDownTrigger(float threshold, std::string cbFunc);
|
void delChaScore1DownTrigger(float threshold, std::string cbFunc);
|
||||||
|
|
||||||
bool haveHpTriggers();
|
bool haveChaScore1Triggers();
|
||||||
void hpTriggerCb(float oldVal, float newVal);
|
void ChaScore1TriggerCb(float oldVal, float newVal);
|
||||||
|
|
||||||
void addNamedEntityListener(std::string const& name, std::string const& prop, int event);
|
void addNamedEntityListener(std::string const& name, std::string const& prop, int event);
|
||||||
void delNamedEntityListener(std::string const& name, std::string const& prop, int event);
|
void delNamedEntityListener(std::string const& name, std::string const& prop, int event);
|
||||||
|
@ -258,12 +258,12 @@ private:
|
||||||
AITYPES::CPropertySetWithExtraList<TAllianceId> _ennemyFaction;
|
AITYPES::CPropertySetWithExtraList<TAllianceId> _ennemyFaction;
|
||||||
AITYPES::CPropertySetWithExtraList<TAllianceId> _friendFaction;
|
AITYPES::CPropertySetWithExtraList<TAllianceId> _friendFaction;
|
||||||
|
|
||||||
typedef std::multimap<float, int> THpTriggerList;
|
typedef std::multimap<float, int> TChaScore1TriggerList;
|
||||||
typedef std::multimap<float, std::string> THpTriggerList2;
|
typedef std::multimap<float, std::string> TChaScore1TriggerList2;
|
||||||
THpTriggerList _hpUpTriggers;
|
TChaScore1TriggerList _ChaScore1UpTriggers;
|
||||||
THpTriggerList _hpDownTriggers;
|
TChaScore1TriggerList _ChaScore1DownTriggers;
|
||||||
THpTriggerList2 _hpUpTriggers2;
|
TChaScore1TriggerList2 _ChaScore1UpTriggers2;
|
||||||
THpTriggerList2 _hpDownTriggers2;
|
TChaScore1TriggerList2 _ChaScore1DownTriggers2;
|
||||||
|
|
||||||
typedef std::multimap<std::pair<std::string, std::string>, int> TNamedEntityListenerList;
|
typedef std::multimap<std::pair<std::string, std::string>, int> TNamedEntityListenerList;
|
||||||
TNamedEntityListenerList _namedEntityListeners;
|
TNamedEntityListenerList _namedEntityListeners;
|
||||||
|
|
|
@ -277,7 +277,7 @@ void CManagerPlayer::update()
|
||||||
|
|
||||||
void CManagerPlayer::addSpawnedPlayer(TDataSetRow const& dataSetRow, NLMISC::CEntityId const& id)
|
void CManagerPlayer::addSpawnedPlayer(TDataSetRow const& dataSetRow, NLMISC::CEntityId const& id)
|
||||||
{
|
{
|
||||||
CBotPlayer* player = new CBotPlayer(this,dataSetRow,id,1); // :TODO: default player level calculation (skill & hp ?).
|
CBotPlayer* player = new CBotPlayer(this,dataSetRow,id,1); // :TODO: default player level calculation (skill & ChaScore1 ?).
|
||||||
addChild(player);
|
addChild(player);
|
||||||
player->spawn();
|
player->spawn();
|
||||||
|
|
||||||
|
|
|
@ -784,7 +784,7 @@ void CGrpProfileBandit::updateProfile(uint ticksSinceLastUpdate)
|
||||||
CAIEntityPhysical *ep = player->getSpawnObj();
|
CAIEntityPhysical *ep = player->getSpawnObj();
|
||||||
if ( ep
|
if ( ep
|
||||||
&& ep->isAlive()
|
&& ep->isAlive()
|
||||||
&& ep->currentHitPoints()>0.f)
|
&& ep->currentChaScore1()>0.f)
|
||||||
{
|
{
|
||||||
const CRootCell *const rootCell=ep->wpos().getRootCell();
|
const CRootCell *const rootCell=ep->wpos().getRootCell();
|
||||||
if ( rootCell
|
if ( rootCell
|
||||||
|
@ -863,7 +863,7 @@ void CGrpProfileBandit::updateProfile(uint ticksSinceLastUpdate)
|
||||||
|
|
||||||
if ( ep
|
if ( ep
|
||||||
&& ep->isAlive()
|
&& ep->isAlive()
|
||||||
&& ep->currentHitPoints()>0.f) // not in safe zone.
|
&& ep->currentChaScore1()>0.f) // not in safe zone.
|
||||||
{
|
{
|
||||||
const CRootCell *const rootCell=ep->wpos().getRootCell();
|
const CRootCell *const rootCell=ep->wpos().getRootCell();
|
||||||
if ( rootCell
|
if ( rootCell
|
||||||
|
@ -1111,7 +1111,7 @@ void CGrpProfileGuard::updateProfile(uint ticksSinceLastUpdate)
|
||||||
CAIEntityPhysical *const ep = player->getSpawnObj();
|
CAIEntityPhysical *const ep = player->getSpawnObj();
|
||||||
if ( !ep
|
if ( !ep
|
||||||
|| !ep->isAlive()
|
|| !ep->isAlive()
|
||||||
|| ep->currentHitPoints()<=0.f
|
|| ep->currentChaScore1()<=0.f
|
||||||
|| ep->wpos().toAIVector().quickDistTo(centerPos)>aggroSize)
|
|| ep->wpos().toAIVector().quickDistTo(centerPos)>aggroSize)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
@ -1281,7 +1281,7 @@ void CGrpProfileTribu::updateProfile(uint ticksSinceLastUpdate)
|
||||||
CAIEntityPhysical *const ep = player->getSpawnObj();
|
CAIEntityPhysical *const ep = player->getSpawnObj();
|
||||||
if ( !ep
|
if ( !ep
|
||||||
|| !ep->isAlive()
|
|| !ep->isAlive()
|
||||||
|| ep->currentHitPoints()<=0.f)
|
|| ep->currentChaScore1()<=0.f)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
const CRootCell *const rootCell=ep->wpos().getRootCell();
|
const CRootCell *const rootCell=ep->wpos().getRootCell();
|
||||||
|
@ -3921,7 +3921,7 @@ void CGrpProfileFaction::checkTargetsAround()
|
||||||
CPersistentOfPhysical const* const popAssisted = (*itAssisted);
|
CPersistentOfPhysical const* const popAssisted = (*itAssisted);
|
||||||
CAIEntityPhysical* const epAssisted = popAssisted->getSpawnObj();
|
CAIEntityPhysical* const epAssisted = popAssisted->getSpawnObj();
|
||||||
// If entity is not alive skip it
|
// If entity is not alive skip it
|
||||||
if (!epAssisted || !epAssisted->isAlive() || epAssisted->currentHitPoints()<=0.f)
|
if (!epAssisted || !epAssisted->isAlive() || epAssisted->currentChaScore1()<=0.f)
|
||||||
continue;
|
continue;
|
||||||
// If entity is not a friend skip it
|
// If entity is not a friend skip it
|
||||||
if (!entityHavePartOfFactions(epAssisted, thisFriendFactions))
|
if (!entityHavePartOfFactions(epAssisted, thisFriendFactions))
|
||||||
|
@ -3946,7 +3946,7 @@ void CGrpProfileFaction::checkTargetsAround()
|
||||||
const CPersistentOfPhysical *const popAssisted = (*itAssisted);
|
const CPersistentOfPhysical *const popAssisted = (*itAssisted);
|
||||||
CAIEntityPhysical *const epAssisted = popAssisted->getSpawnObj();
|
CAIEntityPhysical *const epAssisted = popAssisted->getSpawnObj();
|
||||||
// If entity is not alive skip it
|
// If entity is not alive skip it
|
||||||
if (!epAssisted || !epAssisted->isAlive() || epAssisted->currentHitPoints()<=0.f)
|
if (!epAssisted || !epAssisted->isAlive() || epAssisted->currentChaScore1()<=0.f)
|
||||||
continue;
|
continue;
|
||||||
// If entity is not a npc skip it
|
// If entity is not a npc skip it
|
||||||
if (epAssisted->getRyzomType()!=RYZOMID::npc)
|
if (epAssisted->getRyzomType()!=RYZOMID::npc)
|
||||||
|
@ -3981,7 +3981,7 @@ void CGrpProfileFaction::checkTargetsAround()
|
||||||
CPersistentOfPhysical const* const popAttacked = (*itAttacked);
|
CPersistentOfPhysical const* const popAttacked = (*itAttacked);
|
||||||
CAIEntityPhysical const* const epAttacked = popAttacked->getSpawnObj();
|
CAIEntityPhysical const* const epAttacked = popAttacked->getSpawnObj();
|
||||||
// If entity is not alive skip it
|
// If entity is not alive skip it
|
||||||
if (!epAttacked || !epAttacked->isAlive() || epAttacked->currentHitPoints()<=0.f)
|
if (!epAttacked || !epAttacked->isAlive() || epAttacked->currentChaScore1()<=0.f)
|
||||||
continue;
|
continue;
|
||||||
// If entity is not an ennemy skip it
|
// If entity is not an ennemy skip it
|
||||||
if (!entityHavePartOfFactions(epAttacked, thisEnnemyFactions))
|
if (!entityHavePartOfFactions(epAttacked, thisEnnemyFactions))
|
||||||
|
@ -4009,7 +4009,7 @@ void CGrpProfileFaction::checkTargetsAround()
|
||||||
CPersistentOfPhysical const* const popAttacked = (*itAttacked);
|
CPersistentOfPhysical const* const popAttacked = (*itAttacked);
|
||||||
CAIEntityPhysical const* const epAttacked = popAttacked->getSpawnObj();
|
CAIEntityPhysical const* const epAttacked = popAttacked->getSpawnObj();
|
||||||
// If entity is not alive skip it
|
// If entity is not alive skip it
|
||||||
if (!epAttacked || !epAttacked->isAlive() || epAttacked->currentHitPoints()<=0.f)
|
if (!epAttacked || !epAttacked->isAlive() || epAttacked->currentChaScore1()<=0.f)
|
||||||
continue;
|
continue;
|
||||||
// If entity is not an ennemy skip it
|
// If entity is not an ennemy skip it
|
||||||
if (!entityHavePartOfFactions(epAttacked, thisEnnemyFactions))
|
if (!entityHavePartOfFactions(epAttacked, thisEnnemyFactions))
|
||||||
|
|
|
@ -261,46 +261,46 @@ public:
|
||||||
|
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
// HP Less Filter
|
// ChaScore1 Less Filter
|
||||||
|
|
||||||
class CFightHPLessFilter
|
class CFightChaScore1LessFilter
|
||||||
:public CFightScriptComp
|
:public CFightScriptComp
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CFightHPLessFilter(CFightScriptComp *customComp, float hpLimit)
|
CFightChaScore1LessFilter(CFightScriptComp *customComp, float ChaScore1Limit)
|
||||||
:_CustomComp(customComp)
|
:_CustomComp(customComp)
|
||||||
,_HPLimit(hpLimit)
|
,_ChaScore1Limit(ChaScore1Limit)
|
||||||
{
|
{
|
||||||
nlassert(customComp); // comportment needed.
|
nlassert(customComp); // comportment needed.
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual ~CFightHPLessFilter()
|
virtual ~CFightChaScore1LessFilter()
|
||||||
{}
|
{}
|
||||||
bool update (CSpawnBot &bot) const
|
bool update (CSpawnBot &bot) const
|
||||||
{
|
{
|
||||||
if (bot.hpPercentage()>=_HPLimit)
|
if (bot.ChaScore1Percentage()>=_ChaScore1Limit)
|
||||||
return true;
|
return true;
|
||||||
return _CustomComp->update(bot);
|
return _CustomComp->update(bot);
|
||||||
}
|
}
|
||||||
|
|
||||||
string toString() const
|
string toString() const
|
||||||
{
|
{
|
||||||
return "HP%LESS("+NLMISC::toString(_HPLimit)+","+_CustomComp->toString()+")";
|
return "ChaScore1%LESS("+NLMISC::toString(_ChaScore1Limit)+","+_CustomComp->toString()+")";
|
||||||
}
|
}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
private:
|
private:
|
||||||
NLMISC::CSmartPtr<CFightScriptComp> _CustomComp;
|
NLMISC::CSmartPtr<CFightScriptComp> _CustomComp;
|
||||||
float _HPLimit;
|
float _ChaScore1Limit;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class CFightHPLessFilterReader
|
class CFightChaScore1LessFilterReader
|
||||||
:public CFightScriptCompReader
|
:public CFightScriptCompReader
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CFightHPLessFilterReader() {}
|
CFightChaScore1LessFilterReader() {}
|
||||||
virtual ~CFightHPLessFilterReader() {}
|
virtual ~CFightChaScore1LessFilterReader() {}
|
||||||
|
|
||||||
CFightScriptComp *create (const std::string &inStr) throw (ReadFightActionException)
|
CFightScriptComp *create (const std::string &inStr) throw (ReadFightActionException)
|
||||||
{
|
{
|
||||||
|
@ -308,9 +308,9 @@ public:
|
||||||
explodeSubStrings(inStr, params, -1);
|
explodeSubStrings(inStr, params, -1);
|
||||||
|
|
||||||
if (params.size()!=2)
|
if (params.size()!=2)
|
||||||
throw ReadFightActionException("HP%LESS Needs 2 Params: <hp limit>,<ScriptComp>");
|
throw ReadFightActionException("ChaScore1%LESS Needs 2 Params: <ChaScore1 limit>,<ScriptComp>");
|
||||||
|
|
||||||
float hpLimit=(float)atof(params[0].c_str());
|
float ChaScore1Limit=(float)atof(params[0].c_str());
|
||||||
|
|
||||||
CSmartPtr<CFightScriptComp> scriptComp;
|
CSmartPtr<CFightScriptComp> scriptComp;
|
||||||
try
|
try
|
||||||
|
@ -321,56 +321,56 @@ public:
|
||||||
{
|
{
|
||||||
throw ReadFightActionException("cannot create sub ScriptComp : "+string(ex.what()));
|
throw ReadFightActionException("cannot create sub ScriptComp : "+string(ex.what()));
|
||||||
}
|
}
|
||||||
return new CFightHPLessFilter(scriptComp, hpLimit);
|
return new CFightChaScore1LessFilter(scriptComp, ChaScore1Limit);
|
||||||
}
|
}
|
||||||
std::string getName () const
|
std::string getName () const
|
||||||
{
|
{
|
||||||
return std::string("HP%LESS");
|
return std::string("ChaScore1%LESS");
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
// HP More Filter
|
// ChaScore1 More Filter
|
||||||
|
|
||||||
class CFightHPMoreFilter
|
class CFightChaScore1MoreFilter
|
||||||
:public CFightScriptComp
|
:public CFightScriptComp
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CFightHPMoreFilter(CFightScriptComp *customComp, float hpLimit)
|
CFightChaScore1MoreFilter(CFightScriptComp *customComp, float ChaScore1Limit)
|
||||||
:_CustomComp(customComp)
|
:_CustomComp(customComp)
|
||||||
,_HPLimit(hpLimit)
|
,_ChaScore1Limit(ChaScore1Limit)
|
||||||
{
|
{
|
||||||
nlassert(customComp); // comportment needed.
|
nlassert(customComp); // comportment needed.
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual ~CFightHPMoreFilter()
|
virtual ~CFightChaScore1MoreFilter()
|
||||||
{}
|
{}
|
||||||
bool update (CSpawnBot &bot) const
|
bool update (CSpawnBot &bot) const
|
||||||
{
|
{
|
||||||
if (bot.hpPercentage()<=_HPLimit)
|
if (bot.ChaScore1Percentage()<=_ChaScore1Limit)
|
||||||
return true;
|
return true;
|
||||||
return _CustomComp->update(bot);
|
return _CustomComp->update(bot);
|
||||||
}
|
}
|
||||||
|
|
||||||
string toString() const
|
string toString() const
|
||||||
{
|
{
|
||||||
return "HP%MORE("+NLMISC::toString(_HPLimit)+","+_CustomComp->toString()+")";
|
return "ChaScore1%MORE("+NLMISC::toString(_ChaScore1Limit)+","+_CustomComp->toString()+")";
|
||||||
}
|
}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
private:
|
private:
|
||||||
NLMISC::CSmartPtr<CFightScriptComp> _CustomComp;
|
NLMISC::CSmartPtr<CFightScriptComp> _CustomComp;
|
||||||
float _HPLimit;
|
float _ChaScore1Limit;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class CFightHPMoreFilterReader
|
class CFightChaScore1MoreFilterReader
|
||||||
:public CFightScriptCompReader
|
:public CFightScriptCompReader
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CFightHPMoreFilterReader() {}
|
CFightChaScore1MoreFilterReader() {}
|
||||||
virtual ~CFightHPMoreFilterReader() {}
|
virtual ~CFightChaScore1MoreFilterReader() {}
|
||||||
|
|
||||||
CFightScriptComp *create (const std::string &inStr) throw (ReadFightActionException)
|
CFightScriptComp *create (const std::string &inStr) throw (ReadFightActionException)
|
||||||
{
|
{
|
||||||
|
@ -378,9 +378,9 @@ public:
|
||||||
explodeSubStrings(inStr, params, -1);
|
explodeSubStrings(inStr, params, -1);
|
||||||
|
|
||||||
if (params.size()!=2)
|
if (params.size()!=2)
|
||||||
throw ReadFightActionException("HP%MORE Needs 2 Params: <hp limit>,<ScriptComp>");
|
throw ReadFightActionException("ChaScore1%MORE Needs 2 Params: <ChaScore1 limit>,<ScriptComp>");
|
||||||
|
|
||||||
float hpLimit=(float)atof(params[0].c_str());
|
float ChaScore1Limit=(float)atof(params[0].c_str());
|
||||||
|
|
||||||
CSmartPtr<CFightScriptComp> scriptComp;
|
CSmartPtr<CFightScriptComp> scriptComp;
|
||||||
try
|
try
|
||||||
|
@ -391,11 +391,11 @@ public:
|
||||||
{
|
{
|
||||||
throw ReadFightActionException("cannot create sub ScriptComp : "+string(ex.what()));
|
throw ReadFightActionException("cannot create sub ScriptComp : "+string(ex.what()));
|
||||||
}
|
}
|
||||||
return new CFightHPMoreFilter(scriptComp, hpLimit);
|
return new CFightChaScore1MoreFilter(scriptComp, ChaScore1Limit);
|
||||||
}
|
}
|
||||||
std::string getName () const
|
std::string getName () const
|
||||||
{
|
{
|
||||||
return std::string("HP%MORE");
|
return std::string("ChaScore1%MORE");
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -1045,8 +1045,8 @@ CFightScript::CFightScript()
|
||||||
add(new CFightOnceReader());
|
add(new CFightOnceReader());
|
||||||
add(new CFightTimedFilterReader());
|
add(new CFightTimedFilterReader());
|
||||||
add(new CFightRandomFilterReader());
|
add(new CFightRandomFilterReader());
|
||||||
add(new CFightHPLessFilterReader());
|
add(new CFightChaScore1LessFilterReader());
|
||||||
add(new CFightHPMoreFilterReader());
|
add(new CFightChaScore1MoreFilterReader());
|
||||||
|
|
||||||
add(new CFightAggroBlockReader());
|
add(new CFightAggroBlockReader());
|
||||||
add(new CFightAggroChangeReader());
|
add(new CFightAggroChangeReader());
|
||||||
|
|
|
@ -610,7 +610,7 @@ void CGrpProfileDynHarvest::checkTargetsAround ()
|
||||||
const CAIEntityPhysical*const ep = player->getSpawnObj();
|
const CAIEntityPhysical*const ep = player->getSpawnObj();
|
||||||
if ( !ep
|
if ( !ep
|
||||||
|| !ep->isAlive()
|
|| !ep->isAlive()
|
||||||
|| ep->currentHitPoints()<=0.f )
|
|| ep->currentChaScore1()<=0.f )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
const CRootCell *const rootCell=ep->wpos().getRootCell();
|
const CRootCell *const rootCell=ep->wpos().getRootCell();
|
||||||
|
|
|
@ -698,8 +698,8 @@ void CMessages::init()
|
||||||
TRANSPORT_CLASS_REGISTER (CReportAIInstanceDespawnMsg);
|
TRANSPORT_CLASS_REGISTER (CReportAIInstanceDespawnMsg);
|
||||||
TRANSPORT_CLASS_REGISTER (CWarnBadInstanceMsgImp);
|
TRANSPORT_CLASS_REGISTER (CWarnBadInstanceMsgImp);
|
||||||
TRANSPORT_CLASS_REGISTER (CCreatureSetUrlMsg);
|
TRANSPORT_CLASS_REGISTER (CCreatureSetUrlMsg);
|
||||||
TRANSPORT_CLASS_REGISTER (CChangeCreatureMaxHPMsg)
|
TRANSPORT_CLASS_REGISTER (CChangeCreatureMaxChaScore1Msg)
|
||||||
TRANSPORT_CLASS_REGISTER (CChangeCreatureHPMsg);
|
TRANSPORT_CLASS_REGISTER (CChangeCreatureChaScore1Msg);
|
||||||
TRANSPORT_CLASS_REGISTER (CChangeCreatureModeMsgImp);
|
TRANSPORT_CLASS_REGISTER (CChangeCreatureModeMsgImp);
|
||||||
TRANSPORT_CLASS_REGISTER (CQueryEgs);
|
TRANSPORT_CLASS_REGISTER (CQueryEgs);
|
||||||
|
|
||||||
|
|
|
@ -52,8 +52,8 @@ uint32 *IsolatedSheetServer = NULL;
|
||||||
TDataSetRow *IsolatedTarget = NULL; // sint32
|
TDataSetRow *IsolatedTarget = NULL; // sint32
|
||||||
uint32 *IsolatedMode = NULL; // only mode enum
|
uint32 *IsolatedMode = NULL; // only mode enum
|
||||||
uint32 *IsolatedBehaviour = NULL;
|
uint32 *IsolatedBehaviour = NULL;
|
||||||
uint32 *IsolatedCurrentHitPoints = NULL;
|
uint32 *IsolatedCurrentChaScore1 = NULL;
|
||||||
uint32 *IsolatedMaxHitPoints = NULL;
|
uint32 *IsolatedMaxChaScore1 = NULL;
|
||||||
uint32 *IsolatedBestRoleLevel = NULL;
|
uint32 *IsolatedBestRoleLevel = NULL;
|
||||||
uint8 *IsolatedCombatState = NULL;
|
uint8 *IsolatedCombatState = NULL;
|
||||||
|
|
||||||
|
@ -122,10 +122,10 @@ void CMirrors::initMirror()
|
||||||
DataSet->declareProperty( "Mode", PSOReadWrite | PSONotifyChanges );
|
DataSet->declareProperty( "Mode", PSOReadWrite | PSONotifyChanges );
|
||||||
DataSet->declareProperty( "Behaviour", PSOReadWrite | PSONotifyChanges );
|
DataSet->declareProperty( "Behaviour", PSOReadWrite | PSONotifyChanges );
|
||||||
DataSet->declareProperty( "Target", PSOReadWrite | PSONotifyChanges );
|
DataSet->declareProperty( "Target", PSOReadWrite | PSONotifyChanges );
|
||||||
DataSet->declareProperty( "CurrentHitPoints", PSOReadOnly );
|
DataSet->declareProperty( "CurrentChaScore1", PSOReadOnly );
|
||||||
DataSet->declareProperty( "CurrentRunSpeed", PSOReadOnly );
|
DataSet->declareProperty( "CurrentRunSpeed", PSOReadOnly );
|
||||||
DataSet->declareProperty( "CurrentWalkSpeed", PSOReadOnly );
|
DataSet->declareProperty( "CurrentWalkSpeed", PSOReadOnly );
|
||||||
DataSet->declareProperty( "MaxHitPoints", PSOReadOnly );
|
DataSet->declareProperty( "MaxChaScore1", PSOReadOnly );
|
||||||
DataSet->declareProperty( "BestRoleLevel", PSOReadOnly );
|
DataSet->declareProperty( "BestRoleLevel", PSOReadOnly );
|
||||||
DataSet->declareProperty( "CombatState", PSOReadOnly );
|
DataSet->declareProperty( "CombatState", PSOReadOnly );
|
||||||
DataSet->declareProperty( "TeamId", PSOReadOnly | PSONotifyChanges );
|
DataSet->declareProperty( "TeamId", PSOReadOnly | PSONotifyChanges );
|
||||||
|
|
|
@ -1494,65 +1494,65 @@ void setAutoSpawn_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
// HP related methods
|
// ChaScore1 related methods
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection setMaxHP_ff_
|
@subsection setMaxChaScore1_ff_
|
||||||
Sets the Max HP level of each bot of the group.
|
Sets the Max ChaScore1 level of each bot of the group.
|
||||||
|
|
||||||
Arguments: f(MaxHp) f(SetFull) ->
|
Arguments: f(MaxChaScore1) f(SetFull) ->
|
||||||
@param[in] MaxHP is the new maximum HP for each bot
|
@param[in] MaxChaScore1 is the new maximum ChaScore1 for each bot
|
||||||
@param[in] SetFull if not 0, will set the HP to the new maximum
|
@param[in] SetFull if not 0, will set the ChaScore1 to the new maximum
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()setMaxHP(50000,1);
|
()setMaxChaScore1(50000,1);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroup
|
// CGroup
|
||||||
void setMaxHP_ff_(CStateInstance* entity, CScriptStack& stack)
|
void setMaxChaScore1_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
bool setFull = ((float)stack.top() != 0.f); stack.pop();
|
bool setFull = ((float)stack.top() != 0.f); stack.pop();
|
||||||
float maxHp = ((float)stack.top()); stack.pop();
|
float maxChaScore1 = ((float)stack.top()); stack.pop();
|
||||||
|
|
||||||
CChangeCreatureMaxHPMsg& msgList = CAIS::instance().getCreatureChangeMaxHP();
|
CChangeCreatureMaxChaScore1Msg& msgList = CAIS::instance().getCreatureChangeMaxChaScore1();
|
||||||
|
|
||||||
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
||||||
{
|
{
|
||||||
if (!bot->isSpawned())
|
if (!bot->isSpawned())
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (maxHp > 0)
|
if (maxChaScore1 > 0)
|
||||||
{
|
{
|
||||||
CSpawnBot* const sbot = bot->getSpawnObj();
|
CSpawnBot* const sbot = bot->getSpawnObj();
|
||||||
msgList.Entities.push_back(sbot->dataSetRow());
|
msgList.Entities.push_back(sbot->dataSetRow());
|
||||||
msgList.MaxHp.push_back((uint32)(maxHp));
|
msgList.MaxChaScore1.push_back((uint32)(maxChaScore1));
|
||||||
msgList.SetFull.push_back((uint8)(setFull?1:0));
|
msgList.SetFull.push_back((uint8)(setFull?1:0));
|
||||||
}
|
}
|
||||||
bot->setCustomMaxHp((uint32)maxHp);
|
bot->setCustomMaxChaScore1((uint32)maxChaScore1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection setHPLevel_f_
|
@subsection setChaScore1Level_f_
|
||||||
Sets the current HP level of each bot of the group.
|
Sets the current ChaScore1 level of each bot of the group.
|
||||||
|
|
||||||
Arguments: f(Coef) ->
|
Arguments: f(Coef) ->
|
||||||
@param[in] Coef is the percentage of its max HP each creature will have
|
@param[in] Coef is the percentage of its max ChaScore1 each creature will have
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()setHPLevel(0.8);
|
()setChaScore1Level(0.8);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroup
|
// CGroup
|
||||||
void setHPLevel_f_(CStateInstance* entity, CScriptStack& stack)
|
void setChaScore1Level_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
float coef = stack.top();
|
float coef = stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
|
||||||
CChangeCreatureHPMsg& msgList = CAIS::instance().getCreatureChangeHP();
|
CChangeCreatureChaScore1Msg& msgList = CAIS::instance().getCreatureChangeChaScore1();
|
||||||
|
|
||||||
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
||||||
{
|
{
|
||||||
|
@ -1562,7 +1562,7 @@ void setHPLevel_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CSpawnBot* const sbot = bot->getSpawnObj();
|
CSpawnBot* const sbot = bot->getSpawnObj();
|
||||||
|
|
||||||
msgList.Entities.push_back(sbot->dataSetRow());
|
msgList.Entities.push_back(sbot->dataSetRow());
|
||||||
msgList.DeltaHp.push_back((sint32)(sbot->maxHitPoints()*coef));
|
msgList.DeltaChaScore1.push_back((sint32)(sbot->maxChaScore1()*coef));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1570,34 +1570,34 @@ void setHPLevel_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
// HP related methods
|
// ChaScore1 related methods
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection setHPScale_f__f_
|
@subsection setChaScore1Scale_f__f_
|
||||||
Sets the current HP level of level of each bot of the group. its maxHitPoints
|
Sets the current ChaScore1 level of level of each bot of the group. its maxChaScore1
|
||||||
eg:
|
eg:
|
||||||
for a bot HP = 850 and MaxHP = 1000
|
for a bot ChaScore1 = 850 and MaxChaScore1 = 1000
|
||||||
()setHPScale_f_(0); HP will be 0 so DeltaHp = 850
|
()setChaScore1Scale_f_(0); ChaScore1 will be 0 so DeltaChaScore1 = 850
|
||||||
()setHPScale_f_(1); HP will be 100 so DeltaHp = 150
|
()setChaScore1Scale_f_(1); ChaScore1 will be 100 so DeltaChaScore1 = 150
|
||||||
()setHPScale_f_(0.5); HP will be 500 so DeltaHp = 350
|
()setChaScore1Scale_f_(0.5); ChaScore1 will be 500 so DeltaChaScore1 = 350
|
||||||
if bot HP = 840 and Max abd setHpRatio(0) HP will be 0
|
if bot ChaScore1 = 840 and Max abd setChaScore1Ratio(0) ChaScore1 will be 0
|
||||||
|
|
||||||
|
|
||||||
Arguments: f(Coef) ->
|
Arguments: f(Coef) ->
|
||||||
@param[in] Coef is the percentage of its max HP each creature will *BE*
|
@param[in] Coef is the percentage of its max ChaScore1 each creature will *BE*
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()setHPLevel(0.8);
|
()setChaScore1Level(0.8);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroup
|
// CGroup
|
||||||
void setHPScale_f_(CStateInstance* entity, CScriptStack& stack)
|
void setChaScore1Scale_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
float coef = stack.top();
|
float coef = stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
|
||||||
CChangeCreatureHPMsg& msgList = CAIS::instance().getCreatureChangeHP();
|
CChangeCreatureChaScore1Msg& msgList = CAIS::instance().getCreatureChangeChaScore1();
|
||||||
|
|
||||||
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
||||||
{
|
{
|
||||||
|
@ -1607,7 +1607,7 @@ void setHPScale_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CSpawnBot* const sbot = bot->getSpawnObj();
|
CSpawnBot* const sbot = bot->getSpawnObj();
|
||||||
|
|
||||||
msgList.Entities.push_back(sbot->dataSetRow());
|
msgList.Entities.push_back(sbot->dataSetRow());
|
||||||
msgList.DeltaHp.push_back((sint32)( sbot->maxHitPoints() *coef - sbot->currentHitPoints()) );
|
msgList.DeltaChaScore1.push_back((sint32)( sbot->maxChaScore1() *coef - sbot->currentChaScore1()) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1623,7 +1623,7 @@ Arguments: s(actionName),s(url) ->
|
||||||
@param[in] url of action when player mouse over
|
@param[in] url of action when player mouse over
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()setUrl("Click on Me", "http://www.domain.com/script.php");
|
()setUrl("Click on Me", "http://www.domain.com/script.pChaScore1");
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
@ -1652,24 +1652,24 @@ void setUrl_ss_(CStateInstance* entity, CScriptStack& stack)
|
||||||
|
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection scaleHP_f_
|
@subsection scaleChaScore1_f_
|
||||||
Scales the bots HP.
|
Scales the bots ChaScore1.
|
||||||
|
|
||||||
Arguments: f(Coef) ->
|
Arguments: f(Coef) ->
|
||||||
@param[in] Coef is the percentage of its current HP each creature will have
|
@param[in] Coef is the percentage of its current ChaScore1 each creature will have
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()scaleHP(2);
|
()scaleChaScore1(2);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroup
|
// CGroup
|
||||||
void scaleHP_f_(CStateInstance* entity, CScriptStack& stack)
|
void scaleChaScore1_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
float coef = stack.top();
|
float coef = stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
|
||||||
CChangeCreatureHPMsg& msgList = CAIS::instance().getCreatureChangeHP();
|
CChangeCreatureChaScore1Msg& msgList = CAIS::instance().getCreatureChangeChaScore1();
|
||||||
|
|
||||||
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
||||||
{
|
{
|
||||||
|
@ -1679,34 +1679,34 @@ void scaleHP_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CSpawnBot* const sbot = bot->getSpawnObj();
|
CSpawnBot* const sbot = bot->getSpawnObj();
|
||||||
|
|
||||||
msgList.Entities.push_back(sbot->dataSetRow());
|
msgList.Entities.push_back(sbot->dataSetRow());
|
||||||
msgList.DeltaHp.push_back((sint32)(sbot->currentHitPoints()*coef));
|
msgList.DeltaChaScore1.push_back((sint32)(sbot->currentChaScore1()*coef));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection setBotHPScaleByAlias_fs_
|
@subsection setBotChaScore1ScaleByAlias_fs_
|
||||||
Same as setHpSacale but only on a specific bot of a groupe from the current group by its bot alias
|
Same as setChaScore1Sacale but only on a specific bot of a groupe from the current group by its bot alias
|
||||||
|
|
||||||
Arguments: f(alias),f(Coef), ->
|
Arguments: f(alias),f(Coef), ->
|
||||||
@param[in] alias is the alias of the bot
|
@param[in] alias is the alias of the bot
|
||||||
@param[in] Coef is the percentage of its current HP each creature will have
|
@param[in] Coef is the percentage of its current ChaScore1 each creature will have
|
||||||
|
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()scaleHpByAlias(2, '(A:1000:10560)');
|
()scaleChaScore1ByAlias(2, '(A:1000:10560)');
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroup
|
// CGroup
|
||||||
void setBotHPScaleByAlias_fs_(CStateInstance* entity, CScriptStack& stack)
|
void setBotChaScore1ScaleByAlias_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
uint32 alias = LigoConfig.aliasFromString((string)stack.top()) ; stack.pop();
|
uint32 alias = LigoConfig.aliasFromString((string)stack.top()) ; stack.pop();
|
||||||
|
|
||||||
float coef = stack.top(); stack.pop();
|
float coef = stack.top(); stack.pop();
|
||||||
|
|
||||||
CChangeCreatureHPMsg& msgList = CAIS::instance().getCreatureChangeHP();
|
CChangeCreatureChaScore1Msg& msgList = CAIS::instance().getCreatureChangeChaScore1();
|
||||||
|
|
||||||
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
||||||
{
|
{
|
||||||
|
@ -1717,31 +1717,31 @@ void setBotHPScaleByAlias_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CSpawnBot* const sbot = bot->getSpawnObj();
|
CSpawnBot* const sbot = bot->getSpawnObj();
|
||||||
|
|
||||||
msgList.Entities.push_back(sbot->dataSetRow());
|
msgList.Entities.push_back(sbot->dataSetRow());
|
||||||
msgList.DeltaHp.push_back((sint32)( sbot->maxHitPoints() *coef - sbot->currentHitPoints()) );
|
msgList.DeltaChaScore1.push_back((sint32)( sbot->maxChaScore1() *coef - sbot->currentChaScore1()) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection downScaleHP_f_
|
@subsection downScaleChaScore1_f_
|
||||||
Scales the bots HP down.
|
Scales the bots ChaScore1 down.
|
||||||
|
|
||||||
Arguments: f(Coef) ->
|
Arguments: f(Coef) ->
|
||||||
@param[in] Coef is a value
|
@param[in] Coef is a value
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()downScaleHP(2);
|
()downScaleChaScore1(2);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroup
|
// CGroup
|
||||||
void downScaleHP_f_(CStateInstance* entity, CScriptStack& stack)
|
void downScaleChaScore1_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
float coef = stack.top();
|
float coef = stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
|
||||||
CChangeCreatureHPMsg& msgList = CAIS::instance().getCreatureChangeHP();
|
CChangeCreatureChaScore1Msg& msgList = CAIS::instance().getCreatureChangeChaScore1();
|
||||||
|
|
||||||
clamp(coef, 0.f, 1.f);
|
clamp(coef, 0.f, 1.f);
|
||||||
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
||||||
|
@ -1752,30 +1752,30 @@ void downScaleHP_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CSpawnBot* const sbot = bot->getSpawnObj();
|
CSpawnBot* const sbot = bot->getSpawnObj();
|
||||||
|
|
||||||
msgList.Entities.push_back(sbot->dataSetRow());
|
msgList.Entities.push_back(sbot->dataSetRow());
|
||||||
msgList.DeltaHp.push_back((sint32)(sbot->currentHitPoints()*(coef-1)));
|
msgList.DeltaChaScore1.push_back((sint32)(sbot->currentChaScore1()*(coef-1)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection upScaleHP_f_
|
@subsection upScaleChaScore1_f_
|
||||||
Scales the bots HP up.
|
Scales the bots ChaScore1 up.
|
||||||
|
|
||||||
Arguments: f(Coef) ->
|
Arguments: f(Coef) ->
|
||||||
@param[in] Coef is a value
|
@param[in] Coef is a value
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()upScaleHP(2);
|
()upScaleChaScore1(2);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroup
|
// CGroup
|
||||||
void upScaleHP_f_(CStateInstance* entity, CScriptStack& stack)
|
void upScaleChaScore1_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
float coef = stack.top();
|
float coef = stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
|
||||||
CChangeCreatureHPMsg& msgList = CAIS::instance().getCreatureChangeHP();
|
CChangeCreatureChaScore1Msg& msgList = CAIS::instance().getCreatureChangeChaScore1();
|
||||||
|
|
||||||
clamp(coef, 0.f, 1.f);
|
clamp(coef, 0.f, 1.f);
|
||||||
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
||||||
|
@ -1786,31 +1786,31 @@ void upScaleHP_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
if (spBot)
|
if (spBot)
|
||||||
{
|
{
|
||||||
msgList.Entities.push_back(spBot->dataSetRow());
|
msgList.Entities.push_back(spBot->dataSetRow());
|
||||||
msgList.DeltaHp.push_back((sint32)((spBot->maxHitPoints()-spBot->currentHitPoints())*coef));
|
msgList.DeltaChaScore1.push_back((sint32)((spBot->maxChaScore1()-spBot->currentChaScore1())*coef));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection addHP_f_
|
@subsection addChaScore1_f_
|
||||||
Add HP to the bots.
|
Add ChaScore1 to the bots.
|
||||||
|
|
||||||
Arguments: f(HP) ->
|
Arguments: f(ChaScore1) ->
|
||||||
@param[in] HP is the amount of hit points to add to each bot
|
@param[in] ChaScore1 is the amount of ChaScore1 to add to each bot
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()addHP(500);
|
()addChaScore1(500);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroup
|
// CGroup
|
||||||
void addHP_f_(CStateInstance* entity, CScriptStack& stack)
|
void addChaScore1_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
float addHP = stack.top();
|
float addChaScore1 = stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
|
||||||
CChangeCreatureHPMsg& msgList = CAIS::instance().getCreatureChangeHP();
|
CChangeCreatureChaScore1Msg& msgList = CAIS::instance().getCreatureChangeChaScore1();
|
||||||
|
|
||||||
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
FOREACH(bot, CCont<CBot>, entity->getGroup()->bots())
|
||||||
{
|
{
|
||||||
|
@ -1820,7 +1820,7 @@ void addHP_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CSpawnBot* const sbot = bot->getSpawnObj();
|
CSpawnBot* const sbot = bot->getSpawnObj();
|
||||||
|
|
||||||
msgList.Entities.push_back(sbot->dataSetRow());
|
msgList.Entities.push_back(sbot->dataSetRow());
|
||||||
msgList.DeltaHp.push_back((sint32)(sbot->currentHitPoints()+addHP));
|
msgList.DeltaChaScore1.push_back((sint32)(sbot->currentChaScore1()+addChaScore1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2335,21 +2335,21 @@ Get some player stat.
|
||||||
A player EntityId is used to identify the player. This EntityId is passed as string as argument. The EntityId can be obtains via getCurrentPlayerAggroListTarget or getRandomPlayerAggroListTarget.
|
A player EntityId is used to identify the player. This EntityId is passed as string as argument. The EntityId can be obtains via getCurrentPlayerAggroListTarget or getRandomPlayerAggroListTarget.
|
||||||
The player must be in the same AI Instance (same continent).
|
The player must be in the same AI Instance (same continent).
|
||||||
If the player is not in the same Ai Instance or the input string is empty the function return zero and *display* a warning message on the log. You can think of using isPlayerAlived to be sure that the id is still a valid value.
|
If the player is not in the same Ai Instance or the input string is empty the function return zero and *display* a warning message on the log. You can think of using isPlayerAlived to be sure that the id is still a valid value.
|
||||||
If param is not one of "HP", "MaxHp", "RatioHp" zero is return and a warning message is printed on the log.
|
If param is not one of "ChaScore1", "MaxChaScore1", "RatioChaScore1" zero is return and a warning message is printed on the log.
|
||||||
- The "Hp" stat is the property CURRENT_HIT_POINTS as seen in the mirror.
|
- The "ChaScore1" stat is the property CURRENT_ChaScore1 as seen in the mirror.
|
||||||
- The "MaxHp" stat is the property MAX_HIT_POINTS as seen in the mirror.
|
- The "MaxChaScore1" stat is the property MAX_ChaScore1 as seen in the mirror.
|
||||||
- The "RatioHp" stat is (Hp * 100) / MaxHp
|
- The "RatioChaScore1" stat is (ChaScore1 * 100) / MaxChaScore1
|
||||||
Be careful the argument is case sensitive.
|
Be careful the argument is case sensitive.
|
||||||
|
|
||||||
Arguments: s(playerEidAsString), s(statName) -> s(result)
|
Arguments: s(playerEidAsString), s(statName) -> s(result)
|
||||||
@param[in] playerEidAsString is EntityId as string from the player we want infos
|
@param[in] playerEidAsString is EntityId as string from the player we want infos
|
||||||
@param[in] statName is the name of the property (can be "HP", "MaxHp", "RatioHp")
|
@param[in] statName is the name of the property (can be "ChaScore1", "MaxChaScore1", "RatioChaScore1")
|
||||||
@param[out] value is a the value of the parameter
|
@param[out] value is a the value of the parameter
|
||||||
|
|
||||||
@code
|
@code
|
||||||
($playerEid)getCurrentPlayerEid();
|
($playerEid)getCurrentPlayerEid();
|
||||||
print($playerEid); //log (0x00001fbd50:00:00:81)
|
print($playerEid); //log (0x00001fbd50:00:00:81)
|
||||||
(maxHp)getPlayerStat($playerEid, "MaxHp");
|
(maxChaScore1)getPlayerStat($playerEid, "MaxChaScore1");
|
||||||
@endcode
|
@endcode
|
||||||
*/
|
*/
|
||||||
void getPlayerStat_ss_f(CStateInstance* entity, CScriptStack& stack)
|
void getPlayerStat_ss_f(CStateInstance* entity, CScriptStack& stack)
|
||||||
|
@ -2371,25 +2371,25 @@ void getPlayerStat_ss_f(CStateInstance* entity, CScriptStack& stack)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (statName == "Hp" )
|
if (statName == "ChaScore1" )
|
||||||
{
|
{
|
||||||
// return DSPropertyCURRENT_HIT_POINTS Mirror value
|
// return DSPropertyCURRENT_ChaScore1 Mirror value
|
||||||
CMirrorPropValue<sint32> mirrorSymbol( TheDataset, playerRow, DSPropertyCURRENT_HIT_POINTS );
|
CMirrorPropValue<sint32> mirrorSymbol( TheDataset, playerRow, DSPropertyCURRENT_ChaScore1 );
|
||||||
stack.push((float)mirrorSymbol.getValue());
|
stack.push((float)mirrorSymbol.getValue());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (statName == "MaxHp")
|
else if (statName == "MaxChaScore1")
|
||||||
{
|
{
|
||||||
// return DSPropertyMAX_HIT_POINTS Mirror value
|
// return DSPropertyMAX_ChaScore1 Mirror value
|
||||||
CMirrorPropValue<sint32> mirrorSymbol( TheDataset, playerRow, DSPropertyMAX_HIT_POINTS );
|
CMirrorPropValue<sint32> mirrorSymbol( TheDataset, playerRow, DSPropertyMAX_ChaScore1 );
|
||||||
stack.push((float)mirrorSymbol.getValue());
|
stack.push((float)mirrorSymbol.getValue());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (statName == "RatioHp")
|
else if (statName == "RatioChaScore1")
|
||||||
{
|
{
|
||||||
// return percentage of live (read from mirror values)
|
// return percentage of live (read from mirror values)
|
||||||
CMirrorPropValue<sint32> mirrorSymbol( TheDataset, playerRow, DSPropertyCURRENT_HIT_POINTS );
|
CMirrorPropValue<sint32> mirrorSymbol( TheDataset, playerRow, DSPropertyCURRENT_ChaScore1 );
|
||||||
CMirrorPropValue<sint32> mirrorSymbol2( TheDataset, playerRow, DSPropertyMAX_HIT_POINTS );
|
CMirrorPropValue<sint32> mirrorSymbol2( TheDataset, playerRow, DSPropertyMAX_ChaScore1 );
|
||||||
|
|
||||||
stack.push((float)(100.0*mirrorSymbol.getValue() / mirrorSymbol2.getValue()));
|
stack.push((float)(100.0*mirrorSymbol.getValue() / mirrorSymbol2.getValue()));
|
||||||
return;
|
return;
|
||||||
|
@ -3942,18 +3942,18 @@ Answer is asynchronous so we have to indicates a group and a user event that wil
|
||||||
|
|
||||||
Possible info to know are
|
Possible info to know are
|
||||||
- Name
|
- Name
|
||||||
- Hp
|
- ChaScore1
|
||||||
- MaxHp
|
- MaxChaScore1
|
||||||
- RatioHp
|
- RatioChaScore1
|
||||||
- Sap
|
- ChaScore3
|
||||||
- MaxSap
|
- MaxChaScore3
|
||||||
- RatioSap
|
- RatioChaScore3
|
||||||
- Focus
|
- ChaScore4
|
||||||
- MaxFocus
|
- MaxChaScore4
|
||||||
- RatioFocus
|
- RatioChaScore4
|
||||||
- Stamina
|
- ChaScore2
|
||||||
- MaxStamina
|
- MaxChaScore2
|
||||||
- RatioStamina
|
- RatioChaScore2
|
||||||
|
|
||||||
|
|
||||||
Arguments: s(botIndex), s(query), c(groupThatWillBeTriggered), f(idOfTheUserEvent), s(msgId)
|
Arguments: s(botIndex), s(query), c(groupThatWillBeTriggered), f(idOfTheUserEvent), s(msgId)
|
||||||
|
@ -3969,18 +3969,18 @@ Answer will be given by the getParam
|
||||||
//Sening msg to EGS
|
//Sening msg to EGS
|
||||||
(@groupToNotify)boss_group.context();
|
(@groupToNotify)boss_group.context();
|
||||||
()queryEgs("Name", $playerEid, @groupToNotify, 4, "MSG_NAME");
|
()queryEgs("Name", $playerEid, @groupToNotify, 4, "MSG_NAME");
|
||||||
()queryEgs("Hp", $playerEid, @groupToNotify, 4, "msg1");
|
()queryEgs("ChaScore1", $playerEid, @groupToNotify, 4, "msg1");
|
||||||
()queryEgs("MaxHp", $playerEid, @groupToNotify, 4, "msg2");
|
()queryEgs("MaxChaScore1", $playerEid, @groupToNotify, 4, "msg2");
|
||||||
()queryEgs("RatioHp", $playerEid, @groupToNotify, 4, "msg3");
|
()queryEgs("RatioChaScore1", $playerEid, @groupToNotify, 4, "msg3");
|
||||||
()queryEgs("Sap", $playerEid, @groupToNotify, 4, "msg4");
|
()queryEgs("ChaScore3", $playerEid, @groupToNotify, 4, "msg4");
|
||||||
()queryEgs("MaxSap", $playerEid, @groupToNotify, 4, "msg5");
|
()queryEgs("MaxChaScore3", $playerEid, @groupToNotify, 4, "msg5");
|
||||||
()queryEgs("RatioSap", $playerEid, @groupToNotify, 4, "msg6");
|
()queryEgs("RatioChaScore3", $playerEid, @groupToNotify, 4, "msg6");
|
||||||
()queryEgs("Focus", $playerEid, @groupToNotify, 4, "msg7");
|
()queryEgs("ChaScore4", $playerEid, @groupToNotify, 4, "msg7");
|
||||||
()queryEgs("MaxFocus", $playerEid, @groupToNotify, 4, "msg8");
|
()queryEgs("MaxChaScore4", $playerEid, @groupToNotify, 4, "msg8");
|
||||||
()queryEgs("RatioFocus", $playerEid, @groupToNotify, 4, "msg9");
|
()queryEgs("RatioChaScore4", $playerEid, @groupToNotify, 4, "msg9");
|
||||||
()queryEgs("Stamina", $playerEid, @groupToNotify, 4, "msg10");
|
()queryEgs("ChaScore2", $playerEid, @groupToNotify, 4, "msg10");
|
||||||
()queryEgs("MaxStamina", $playerEid, @groupToNotify, 4, "msg11");
|
()queryEgs("MaxChaScore2", $playerEid, @groupToNotify, 4, "msg11");
|
||||||
()queryEgs("RatioStamina", $playerEid, @groupToNotify, 4, "msg12");
|
()queryEgs("RatioChaScore2", $playerEid, @groupToNotify, 4, "msg12");
|
||||||
()queryEgs("BestSkillLevel", $playerEid, @groupToNotify, 4, "msg13");
|
()queryEgs("BestSkillLevel", $playerEid, @groupToNotify, 4, "msg13");
|
||||||
@endcode
|
@endcode
|
||||||
Answer of the EGS
|
Answer of the EGS
|
||||||
|
@ -4783,14 +4783,14 @@ std::map<std::string, FScrptNativeFunc> nfGetGroupNativeFunctions()
|
||||||
REGISTER_NATIVE_FUNC(functions, clearAggroList__);
|
REGISTER_NATIVE_FUNC(functions, clearAggroList__);
|
||||||
REGISTER_NATIVE_FUNC(functions, setMode_s_);
|
REGISTER_NATIVE_FUNC(functions, setMode_s_);
|
||||||
REGISTER_NATIVE_FUNC(functions, setAutoSpawn_f_);
|
REGISTER_NATIVE_FUNC(functions, setAutoSpawn_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, setMaxHP_ff_);
|
REGISTER_NATIVE_FUNC(functions, setMaxChaScore1_ff_);
|
||||||
REGISTER_NATIVE_FUNC(functions, setHPLevel_f_);
|
REGISTER_NATIVE_FUNC(functions, setChaScore1Level_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, setHPScale_f_);
|
REGISTER_NATIVE_FUNC(functions, setChaScore1Scale_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, scaleHP_f_);
|
REGISTER_NATIVE_FUNC(functions, scaleChaScore1_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, setBotHPScaleByAlias_fs_);
|
REGISTER_NATIVE_FUNC(functions, setBotChaScore1ScaleByAlias_fs_);
|
||||||
REGISTER_NATIVE_FUNC(functions, downScaleHP_f_);
|
REGISTER_NATIVE_FUNC(functions, downScaleChaScore1_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, upScaleHP_f_);
|
REGISTER_NATIVE_FUNC(functions, upScaleChaScore1_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, addHP_f_);
|
REGISTER_NATIVE_FUNC(functions, addChaScore1_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, aiAction_s_);
|
REGISTER_NATIVE_FUNC(functions, aiAction_s_);
|
||||||
REGISTER_NATIVE_FUNC(functions, aiActionSelf_s_);
|
REGISTER_NATIVE_FUNC(functions, aiActionSelf_s_);
|
||||||
REGISTER_NATIVE_FUNC(functions, addProfileParameter_s_);
|
REGISTER_NATIVE_FUNC(functions, addProfileParameter_s_);
|
||||||
|
|
|
@ -1037,22 +1037,22 @@ void setRespawnTime_f_(CStateInstance* entity, CScriptStack& stack)
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection addHpUpTrigger_ff_
|
@subsection addChaScore1UpTrigger_ff_
|
||||||
Registers a trigger on HP increases. Whenever the HP level of a bot upcross
|
Registers a trigger on ChaScore1 increases. Whenever the ChaScore1 level of a bot upcross
|
||||||
the threshold it triggers the specified user event. Several triggers can be
|
the threshold it triggers the specified user event. Several triggers can be
|
||||||
registered on the same group, even with the same threshold and event.
|
registered on the same group, even with the same threshold and event.
|
||||||
|
|
||||||
Arguments: f(threshold),f(user_event_n) ->
|
Arguments: f(threshold),f(user_event_n) ->
|
||||||
@param[in] threshold is a HP threshold
|
@param[in] threshold is a ChaScore1 threshold
|
||||||
@param[in] user_event_n is the user event to trigger
|
@param[in] user_event_n is the user event to trigger
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()addHpUpTrigger(0.5, 4);
|
()addChaScore1UpTrigger(0.5, 4);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroupNpc
|
// CGroupNpc
|
||||||
void addHpUpTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
void addChaScore1UpTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
int eventId = (int)(float)stack.top();
|
int eventId = (int)(float)stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
@ -1061,31 +1061,31 @@ void addHpUpTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
||||||
if (!grpNpc)
|
if (!grpNpc)
|
||||||
{
|
{
|
||||||
nlwarning("Trying to add a hp up trigger (%f) listener (user event %d) in a group which is not an NPC group.", threshold, eventId);
|
nlwarning("Trying to add a ChaScore1 up trigger (%f) listener (user event %d) in a group which is not an NPC group.", threshold, eventId);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
grpNpc->addHpUpTrigger(threshold, eventId);
|
grpNpc->addChaScore1UpTrigger(threshold, eventId);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection delHpUpTrigger_ff_
|
@subsection delChaScore1UpTrigger_ff_
|
||||||
Unregisters a trigger on HP increases. The same values used when registering
|
Unregisters a trigger on ChaScore1 increases. The same values used when registering
|
||||||
the trigger must be passed. If several triggers were defined with the same
|
the trigger must be passed. If several triggers were defined with the same
|
||||||
parameters only one is removed.
|
parameters only one is removed.
|
||||||
|
|
||||||
Arguments: f(threshold),f(user_event_n) ->
|
Arguments: f(threshold),f(user_event_n) ->
|
||||||
@param[in] threshold is a HP threshold
|
@param[in] threshold is a ChaScore1 threshold
|
||||||
@param[in] user_event_n is the user event to trigger
|
@param[in] user_event_n is the user event to trigger
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()delHpUpTrigger(0.5, 4);
|
()delChaScore1UpTrigger(0.5, 4);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroupNpc
|
// CGroupNpc
|
||||||
void delHpUpTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
void delChaScore1UpTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
int eventId = (int)(float)stack.top();
|
int eventId = (int)(float)stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
@ -1094,31 +1094,31 @@ void delHpUpTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
||||||
if (!grpNpc)
|
if (!grpNpc)
|
||||||
{
|
{
|
||||||
nlwarning("Trying to delete a hp up trigger (%f) listener (user event %d) in a group which is not an NPC group.", threshold, eventId);
|
nlwarning("Trying to delete a ChaScore1 up trigger (%f) listener (user event %d) in a group which is not an NPC group.", threshold, eventId);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
grpNpc->delHpUpTrigger(threshold, eventId);
|
grpNpc->delChaScore1UpTrigger(threshold, eventId);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection addHpDownTrigger_ff_
|
@subsection addChaScore1DownTrigger_ff_
|
||||||
Registers a trigger on HP decreases. Whenever the HP level of a bot downcross
|
Registers a trigger on ChaScore1 decreases. Whenever the ChaScore1 level of a bot downcross
|
||||||
the threshold it triggers the specified user event. Several triggers can be
|
the threshold it triggers the specified user event. Several triggers can be
|
||||||
registered on the same group, even with the same threshold and event.
|
registered on the same group, even with the same threshold and event.
|
||||||
|
|
||||||
Arguments: f(threshold),f(user_event_n) ->
|
Arguments: f(threshold),f(user_event_n) ->
|
||||||
@param[in] threshold is a HP threshold
|
@param[in] threshold is a ChaScore1 threshold
|
||||||
@param[in] user_event_n is the user event to trigger
|
@param[in] user_event_n is the user event to trigger
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()addHpDownTrigger(0.5, 5);
|
()addChaScore1DownTrigger(0.5, 5);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroupNpc
|
// CGroupNpc
|
||||||
void addHpDownTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
void addChaScore1DownTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
int eventId = (int)(float)stack.top();
|
int eventId = (int)(float)stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
@ -1127,31 +1127,31 @@ void addHpDownTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
||||||
if (!grpNpc)
|
if (!grpNpc)
|
||||||
{
|
{
|
||||||
nlwarning("Trying to add a hp down trigger (%f) listener (user event %d) in a group which is not an NPC group.", threshold, eventId);
|
nlwarning("Trying to add a ChaScore1 down trigger (%f) listener (user event %d) in a group which is not an NPC group.", threshold, eventId);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
grpNpc->addHpDownTrigger(threshold, eventId);
|
grpNpc->addChaScore1DownTrigger(threshold, eventId);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection delHpDownTrigger_ff_
|
@subsection delChaScore1DownTrigger_ff_
|
||||||
Unregisters a trigger on HP decreases. The same values used when registering
|
Unregisters a trigger on ChaScore1 decreases. The same values used when registering
|
||||||
the trigger must be passed. If several triggers were defined with the same
|
the trigger must be passed. If several triggers were defined with the same
|
||||||
parameters only one is removed.
|
parameters only one is removed.
|
||||||
|
|
||||||
Arguments: f(threshold),f(user_event_n) ->
|
Arguments: f(threshold),f(user_event_n) ->
|
||||||
@param[in] threshold is a HP threshold
|
@param[in] threshold is a ChaScore1 threshold
|
||||||
@param[in] user_event_n is the user event to trigger
|
@param[in] user_event_n is the user event to trigger
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()delHpDownTrigger(0.5, 5);
|
()delChaScore1DownTrigger(0.5, 5);
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroupNpc
|
// CGroupNpc
|
||||||
void delHpDownTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
void delChaScore1DownTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
int eventId = (int)(float)stack.top();
|
int eventId = (int)(float)stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
@ -1160,31 +1160,31 @@ void delHpDownTrigger_ff_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
||||||
if (!grpNpc)
|
if (!grpNpc)
|
||||||
{
|
{
|
||||||
nlwarning("Trying to delete a hp down trigger (%f) listener (user event %d) in a group which is not an NPC group.", threshold, eventId);
|
nlwarning("Trying to delete a ChaScore1 down trigger (%f) listener (user event %d) in a group which is not an NPC group.", threshold, eventId);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
grpNpc->delHpDownTrigger(threshold, eventId);
|
grpNpc->delChaScore1DownTrigger(threshold, eventId);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection addHpUpTrigger_fs_
|
@subsection addChaScore1UpTrigger_fs_
|
||||||
@sa @ref addHpUpTrigger_ff_
|
@sa @ref addChaScore1UpTrigger_ff_
|
||||||
|
|
||||||
These triggers call a script function instead of trigger a user event.
|
These triggers call a script function instead of trigger a user event.
|
||||||
|
|
||||||
Arguments: f(threshold),s(callback) ->
|
Arguments: f(threshold),s(callback) ->
|
||||||
@param[in] threshold is a HP threshold
|
@param[in] threshold is a ChaScore1 threshold
|
||||||
@param[in] callback is the script callback to trigger
|
@param[in] callback is the script callback to trigger
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()addHpUpTrigger(0.5, "onHPIncrease");
|
()addChaScore1UpTrigger(0.5, "onChaScore1Increase");
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroupNpc
|
// CGroupNpc
|
||||||
void addHpUpTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
void addChaScore1UpTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
std::string cbFunc = (std::string)stack.top();
|
std::string cbFunc = (std::string)stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
@ -1193,31 +1193,31 @@ void addHpUpTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
||||||
if (!grpNpc)
|
if (!grpNpc)
|
||||||
{
|
{
|
||||||
nlwarning("Trying to add a hp up trigger (%f) listener (%s) in a group which is not an NPC group.", threshold, cbFunc.c_str());
|
nlwarning("Trying to add a ChaScore1 up trigger (%f) listener (%s) in a group which is not an NPC group.", threshold, cbFunc.c_str());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
grpNpc->addHpUpTrigger(threshold, cbFunc);
|
grpNpc->addChaScore1UpTrigger(threshold, cbFunc);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection delHpUpTrigger_fs_
|
@subsection delChaScore1UpTrigger_fs_
|
||||||
@sa @ref delHpUpTrigger_ff_
|
@sa @ref delChaScore1UpTrigger_ff_
|
||||||
|
|
||||||
This function is used to remove script function triggers.
|
This function is used to remove script function triggers.
|
||||||
|
|
||||||
Arguments: f(threshold),s(callback) ->
|
Arguments: f(threshold),s(callback) ->
|
||||||
@param[in] threshold is a HP threshold
|
@param[in] threshold is a ChaScore1 threshold
|
||||||
@param[in] callback is the script callback to trigger
|
@param[in] callback is the script callback to trigger
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()delHpUpTrigger(0.5, "onHPIncrease");
|
()delChaScore1UpTrigger(0.5, "onChaScore1Increase");
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroupNpc
|
// CGroupNpc
|
||||||
void delHpUpTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
void delChaScore1UpTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
std::string cbFunc = (std::string)stack.top();
|
std::string cbFunc = (std::string)stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
@ -1226,31 +1226,31 @@ void delHpUpTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
||||||
if (!grpNpc)
|
if (!grpNpc)
|
||||||
{
|
{
|
||||||
nlwarning("Trying to delete a hp up trigger (%f) listener (%s) in a group which is not an NPC group.", threshold, cbFunc.c_str());
|
nlwarning("Trying to delete a ChaScore1 up trigger (%f) listener (%s) in a group which is not an NPC group.", threshold, cbFunc.c_str());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
grpNpc->delHpUpTrigger(threshold, cbFunc);
|
grpNpc->delChaScore1UpTrigger(threshold, cbFunc);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection addHpDownTrigger_fs_
|
@subsection addChaScore1DownTrigger_fs_
|
||||||
@sa @ref addHpDownTrigger_ff_
|
@sa @ref addChaScore1DownTrigger_ff_
|
||||||
|
|
||||||
These triggers call a script function instead of trigger a user event.
|
These triggers call a script function instead of trigger a user event.
|
||||||
|
|
||||||
Arguments: f(threshold),s(callback) ->
|
Arguments: f(threshold),s(callback) ->
|
||||||
@param[in] threshold is a HP threshold
|
@param[in] threshold is a ChaScore1 threshold
|
||||||
@param[in] callback is the script callback to trigger
|
@param[in] callback is the script callback to trigger
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()addHpDownTrigger(0.5, "onHPDecrease");
|
()addChaScore1DownTrigger(0.5, "onChaScore1Decrease");
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroupNpc
|
// CGroupNpc
|
||||||
void addHpDownTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
void addChaScore1DownTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
std::string cbFunc = (std::string)stack.top();
|
std::string cbFunc = (std::string)stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
@ -1259,31 +1259,31 @@ void addHpDownTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
||||||
if (!grpNpc)
|
if (!grpNpc)
|
||||||
{
|
{
|
||||||
nlwarning("Trying to add a hp down trigger (%f) listener (%s) in a group which is not an NPC group.", threshold, cbFunc.c_str());
|
nlwarning("Trying to add a ChaScore1 down trigger (%f) listener (%s) in a group which is not an NPC group.", threshold, cbFunc.c_str());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
grpNpc->addHpDownTrigger(threshold, cbFunc);
|
grpNpc->addChaScore1DownTrigger(threshold, cbFunc);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
/** @page code
|
/** @page code
|
||||||
|
|
||||||
@subsection delHpDownTrigger_fs_
|
@subsection delChaScore1DownTrigger_fs_
|
||||||
@sa @ref delHpDownTrigger_ff_
|
@sa @ref delChaScore1DownTrigger_ff_
|
||||||
|
|
||||||
This function is used to remove script function triggers.
|
This function is used to remove script function triggers.
|
||||||
|
|
||||||
Arguments: f(threshold),s(callback) ->
|
Arguments: f(threshold),s(callback) ->
|
||||||
@param[in] threshold is a HP threshold
|
@param[in] threshold is a ChaScore1 threshold
|
||||||
@param[in] callback is the script callback to trigger
|
@param[in] callback is the script callback to trigger
|
||||||
|
|
||||||
@code
|
@code
|
||||||
()delHpDownTrigger(0.5, "onHPDecrease");
|
()delChaScore1DownTrigger(0.5, "onChaScore1Decrease");
|
||||||
@endcode
|
@endcode
|
||||||
|
|
||||||
*/
|
*/
|
||||||
// CGroupNpc
|
// CGroupNpc
|
||||||
void delHpDownTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
void delChaScore1DownTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
{
|
{
|
||||||
std::string cbFunc = (std::string)stack.top();
|
std::string cbFunc = (std::string)stack.top();
|
||||||
stack.pop();
|
stack.pop();
|
||||||
|
@ -1292,10 +1292,10 @@ void delHpDownTrigger_fs_(CStateInstance* entity, CScriptStack& stack)
|
||||||
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
CGroupNpc* const grpNpc = dynamic_cast<CGroupNpc*>(entity->getGroup());
|
||||||
if (!grpNpc)
|
if (!grpNpc)
|
||||||
{
|
{
|
||||||
nlwarning("Trying to delete a hp down trigger (%f) listener (%s) in a group which is not an NPC group.", threshold, cbFunc.c_str());
|
nlwarning("Trying to delete a ChaScore1 down trigger (%f) listener (%s) in a group which is not an NPC group.", threshold, cbFunc.c_str());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
grpNpc->delHpDownTrigger(threshold, cbFunc);
|
grpNpc->delChaScore1DownTrigger(threshold, cbFunc);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
@ -2752,14 +2752,14 @@ std::map<std::string, FScrptNativeFunc> nfGetNpcGroupNativeFunctions()
|
||||||
REGISTER_NATIVE_FUNC(functions, ignoreOffensiveActions_f_);
|
REGISTER_NATIVE_FUNC(functions, ignoreOffensiveActions_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, setDespawnTime_f_);
|
REGISTER_NATIVE_FUNC(functions, setDespawnTime_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, setRespawnTime_f_);
|
REGISTER_NATIVE_FUNC(functions, setRespawnTime_f_);
|
||||||
REGISTER_NATIVE_FUNC(functions, addHpUpTrigger_ff_);
|
REGISTER_NATIVE_FUNC(functions, addChaScore1UpTrigger_ff_);
|
||||||
REGISTER_NATIVE_FUNC(functions, delHpUpTrigger_ff_);
|
REGISTER_NATIVE_FUNC(functions, delChaScore1UpTrigger_ff_);
|
||||||
REGISTER_NATIVE_FUNC(functions, addHpDownTrigger_ff_);
|
REGISTER_NATIVE_FUNC(functions, addChaScore1DownTrigger_ff_);
|
||||||
REGISTER_NATIVE_FUNC(functions, delHpDownTrigger_ff_);
|
REGISTER_NATIVE_FUNC(functions, delChaScore1DownTrigger_ff_);
|
||||||
REGISTER_NATIVE_FUNC(functions, addHpUpTrigger_fs_);
|
REGISTER_NATIVE_FUNC(functions, addChaScore1UpTrigger_fs_);
|
||||||
REGISTER_NATIVE_FUNC(functions, delHpUpTrigger_fs_);
|
REGISTER_NATIVE_FUNC(functions, delChaScore1UpTrigger_fs_);
|
||||||
REGISTER_NATIVE_FUNC(functions, addHpDownTrigger_fs_);
|
REGISTER_NATIVE_FUNC(functions, addChaScore1DownTrigger_fs_);
|
||||||
REGISTER_NATIVE_FUNC(functions, delHpDownTrigger_fs_);
|
REGISTER_NATIVE_FUNC(functions, delChaScore1DownTrigger_fs_);
|
||||||
REGISTER_NATIVE_FUNC(functions, addNamedEntityListener_ssf_);
|
REGISTER_NATIVE_FUNC(functions, addNamedEntityListener_ssf_);
|
||||||
REGISTER_NATIVE_FUNC(functions, delNamedEntityListener_ssf_);
|
REGISTER_NATIVE_FUNC(functions, delNamedEntityListener_ssf_);
|
||||||
REGISTER_NATIVE_FUNC(functions, addNamedEntityListener_sss_);
|
REGISTER_NATIVE_FUNC(functions, addNamedEntityListener_sss_);
|
||||||
|
|
|
@ -190,14 +190,14 @@ arguments.
|
||||||
|
|
||||||
@subsection nativeFunctionsTriggers Event handler creation
|
@subsection nativeFunctionsTriggers Event handler creation
|
||||||
|
|
||||||
- @ref addHpUpTrigger_ff_
|
- @ref addChaScore1UpTrigger_ff_
|
||||||
- @ref addHpDownTrigger_ff_
|
- @ref addChaScore1DownTrigger_ff_
|
||||||
- @ref delHpUpTrigger_ff_
|
- @ref delChaScore1UpTrigger_ff_
|
||||||
- @ref delHpDownTrigger_ff_
|
- @ref delChaScore1DownTrigger_ff_
|
||||||
- @ref addHpUpTrigger_fs_
|
- @ref addChaScore1UpTrigger_fs_
|
||||||
- @ref addHpDownTrigger_fs_
|
- @ref addChaScore1DownTrigger_fs_
|
||||||
- @ref delHpUpTrigger_fs_
|
- @ref delChaScore1UpTrigger_fs_
|
||||||
- @ref delHpDownTrigger_fs_
|
- @ref delChaScore1DownTrigger_fs_
|
||||||
- @ref addNamedEntityListener_ssf_
|
- @ref addNamedEntityListener_ssf_
|
||||||
- @ref delNamedEntityListener_ssf_
|
- @ref delNamedEntityListener_ssf_
|
||||||
- @ref addNamedEntityListener_sss_
|
- @ref addNamedEntityListener_sss_
|
||||||
|
@ -223,12 +223,12 @@ arguments.
|
||||||
- @ref stopMoving__
|
- @ref stopMoving__
|
||||||
- @ref followPlayer_sf_
|
- @ref followPlayer_sf_
|
||||||
- @ref wander__
|
- @ref wander__
|
||||||
- @ref downScaleHP_f_
|
- @ref downScaleChaScore1_f_
|
||||||
- @ref upScaleHP_f_
|
- @ref upScaleChaScore1_f_
|
||||||
- @ref scaleHP_f_
|
- @ref scaleChaScore1_f_
|
||||||
- @ref setMaxHP_ff_
|
- @ref setMaxChaScore1_ff_
|
||||||
- @ref setHPLevel_f_
|
- @ref setChaScore1Level_f_
|
||||||
- @ref addHP_f_
|
- @ref addChaSCore1_f_
|
||||||
- @ref aiAction_s_
|
- @ref aiAction_s_
|
||||||
- @ref aiActionSelf_s_
|
- @ref aiActionSelf_s_
|
||||||
- @ref setPlayerController_ss_
|
- @ref setPlayerController_ss_
|
||||||
|
@ -507,11 +507,11 @@ setAutoSpawn_f_
|
||||||
|
|
||||||
setFactionProp_ss_
|
setFactionProp_ss_
|
||||||
|
|
||||||
downScaleHP_f_
|
downScaleChaScore1_f_
|
||||||
upScaleHP_f_
|
upScaleChaScore1_f_
|
||||||
scaleHP_f_
|
scaleChaScore1_f_
|
||||||
setHPLevel_f_
|
setChaScore1Level_f_
|
||||||
addHP_f_
|
addChaScore1_f_
|
||||||
|
|
||||||
clamp_fff_f
|
clamp_fff_f
|
||||||
min_ff_f
|
min_ff_f
|
||||||
|
@ -546,14 +546,14 @@ loadFile_s_
|
||||||
break__
|
break__
|
||||||
groupName_c_s
|
groupName_c_s
|
||||||
|
|
||||||
addHpUpTrigger_ff_
|
addChaScore1UpTrigger_ff_
|
||||||
addHpDownTrigger_ff_
|
addChaScore1DownTrigger_ff_
|
||||||
delHpUpTrigger_ff_
|
delChaScore1UpTrigger_ff_
|
||||||
delHpDownTrigger_ff_
|
delChaScore1DownTrigger_ff_
|
||||||
addHpUpTrigger_fs_
|
addChaScore1UpTrigger_fs_
|
||||||
addHpDownTrigger_fs_
|
addChaScore1DownTrigger_fs_
|
||||||
delHpUpTrigger_fs_
|
delChaScore1UpTrigger_fs_
|
||||||
delHpDownTrigger_fs_
|
delChaScore1DownTrigger_fs_
|
||||||
|
|
||||||
aiAction_s_
|
aiAction_s_
|
||||||
aiActionSelf_s_
|
aiActionSelf_s_
|
||||||
|
|
|
@ -27,9 +27,9 @@ namespace AI_EVENT_REPORT
|
||||||
// The conversion table
|
// The conversion table
|
||||||
const CStringConversion<TAIReportStat>::CPair stringTable [] =
|
const CStringConversion<TAIReportStat>::CPair stringTable [] =
|
||||||
{
|
{
|
||||||
{ "HitPoints", HitPoints },
|
{ "ChaScore1", ChaScore1 },
|
||||||
{ "Stamina", Stamina },
|
{ "ChaScore2", ChaScore2 },
|
||||||
{ "Sap", Sap },
|
{ "ChaScore2", ChaScore3 },
|
||||||
{ "Unknown", Unknown },
|
{ "Unknown", Unknown },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -29,9 +29,9 @@ namespace AI_EVENT_REPORT
|
||||||
{
|
{
|
||||||
enum TAIReportStat
|
enum TAIReportStat
|
||||||
{
|
{
|
||||||
HitPoints = 0,
|
ChaScore1 = 0,
|
||||||
Stamina,
|
ChaScore2,
|
||||||
Sap,
|
ChaScore3,
|
||||||
Unknown,
|
Unknown,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -100,7 +100,7 @@ struct CAiEventReport
|
||||||
TDataSetRow Originator;
|
TDataSetRow Originator;
|
||||||
/// Target
|
/// Target
|
||||||
TDataSetRow Target;
|
TDataSetRow Target;
|
||||||
/// the affected stats (Hp, sap...)
|
/// the affected stats (ChaScore1, ChaScore2...)
|
||||||
std::vector<AI_EVENT_REPORT::TAIReportStat> AffectedStats;
|
std::vector<AI_EVENT_REPORT::TAIReportStat> AffectedStats;
|
||||||
/// the delta values
|
/// the delta values
|
||||||
std::vector<sint32> DeltaValue;
|
std::vector<sint32> DeltaValue;
|
||||||
|
|
|
@ -291,8 +291,8 @@ namespace AITYPES
|
||||||
// EffectCurseHatredDegeneres,
|
// EffectCurseHatredDegeneres,
|
||||||
//
|
//
|
||||||
// EffectHeal,
|
// EffectHeal,
|
||||||
// EffectStamina,
|
// EffectChaScore2,
|
||||||
// EffectSap,
|
// EffectChaScore3,
|
||||||
//
|
//
|
||||||
// EffectDotShock,
|
// EffectDotShock,
|
||||||
// EffectDotSlash,
|
// EffectDotSlash,
|
||||||
|
|
|
@ -219,39 +219,39 @@ void CAiWrapperServer::despawnEntity(NLMISC::CEntityId entityId, uint32 alias)
|
||||||
CUnifiedNetwork::getInstance()->send("AIS",msgout);
|
CUnifiedNetwork::getInstance()->send("AIS",msgout);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CAiWrapperServer::setGrpHPLevel(NLMISC::CEntityId entityId, uint32 alias, float hp)
|
void CAiWrapperServer::setGrpChaScore1Level(NLMISC::CEntityId entityId, uint32 alias, float ChaScore1)
|
||||||
{
|
{
|
||||||
uint32 messageVersion = 1;
|
uint32 messageVersion = 1;
|
||||||
uint32 nbString=2;
|
uint32 nbString=2;
|
||||||
std::string eid = entityId.toString();
|
std::string eid = entityId.toString();
|
||||||
|
|
||||||
std::string hpstr = NLMISC::toString("()setHPScale(%f);", hp);
|
std::string ChaScore1str = NLMISC::toString("()setChaScore1Scale(%f);", ChaScore1);
|
||||||
|
|
||||||
//CMessage msgout("EVENT_NPC_GROUP_SCRIPT");
|
//CMessage msgout("EVENT_NPC_GROUP_SCRIPT");
|
||||||
CMessage msgout("R2_NPC_BOT_SCRIPT_BY_ID");
|
CMessage msgout("R2_NPC_BOT_SCRIPT_BY_ID");
|
||||||
msgout.serial(messageVersion);
|
msgout.serial(messageVersion);
|
||||||
msgout.serial(nbString);
|
msgout.serial(nbString);
|
||||||
msgout.serial(eid);
|
msgout.serial(eid);
|
||||||
msgout.serial(hpstr);
|
msgout.serial(ChaScore1str);
|
||||||
|
|
||||||
CUnifiedNetwork::getInstance()->send("AIS",msgout);
|
CUnifiedNetwork::getInstance()->send("AIS",msgout);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CAiWrapperServer::setHPLevel(NLMISC::CEntityId entityId, uint32 alias, float hp)
|
void CAiWrapperServer::setChaScore1Level(NLMISC::CEntityId entityId, uint32 alias, float ChaScore1)
|
||||||
{
|
{
|
||||||
|
|
||||||
uint32 messageVersion = 1;
|
uint32 messageVersion = 1;
|
||||||
uint32 nbString=2;
|
uint32 nbString=2;
|
||||||
std::string eid = entityId.toString();
|
std::string eid = entityId.toString();
|
||||||
|
|
||||||
std::string hpstr = NLMISC::toString("()setBotHPScaleByAlias(%f, \"%s\");", hp, aliasToString(alias).c_str());
|
std::string ChaScore1str = NLMISC::toString("()setBotChaScore1ScaleByAlias(%f, \"%s\");", ChaScore1, aliasToString(alias).c_str());
|
||||||
|
|
||||||
//CMessage msgout("EVENT_NPC_GROUP_SCRIPT");
|
//CMessage msgout("EVENT_NPC_GROUP_SCRIPT");
|
||||||
CMessage msgout("R2_NPC_BOT_SCRIPT_BY_ID");
|
CMessage msgout("R2_NPC_BOT_SCRIPT_BY_ID");
|
||||||
msgout.serial(messageVersion);
|
msgout.serial(messageVersion);
|
||||||
msgout.serial(nbString);
|
msgout.serial(nbString);
|
||||||
msgout.serial(eid);
|
msgout.serial(eid);
|
||||||
msgout.serial(hpstr);
|
msgout.serial(ChaScore1str);
|
||||||
|
|
||||||
CUnifiedNetwork::getInstance()->send("AIS",msgout);
|
CUnifiedNetwork::getInstance()->send("AIS",msgout);
|
||||||
}
|
}
|
||||||
|
|
|
@ -299,8 +299,8 @@ AdminCommandsInit[] =
|
||||||
"Invulnerable", true,
|
"Invulnerable", true,
|
||||||
"ShowFactionChannels", true,
|
"ShowFactionChannels", true,
|
||||||
"CreateCharacterStartSkillsValue", false,
|
"CreateCharacterStartSkillsValue", false,
|
||||||
"HP", true,
|
"ChaScore1", true,
|
||||||
"MaxHP", true,
|
"MaxChaScore1", true,
|
||||||
"Speed", true,
|
"Speed", true,
|
||||||
"Money", true,
|
"Money", true,
|
||||||
"MoneyGuild", true,
|
"MoneyGuild", true,
|
||||||
|
@ -936,35 +936,35 @@ void GET_CHARACTER_Helper(std::string& command, const NLMISC::CEntityId& id, con
|
||||||
// Don't forget to add your command in the AdminCommandsInit array if you want the command to be executed on the client
|
// Don't forget to add your command in the AdminCommandsInit array if you want the command to be executed on the client
|
||||||
//
|
//
|
||||||
|
|
||||||
ENTITY_VARIABLE(HP, "Hit points of a player")
|
ENTITY_VARIABLE(ChaScore1, "ChaScore1 of a player")
|
||||||
{
|
{
|
||||||
ENTITY_GET_ENTITY
|
ENTITY_GET_ENTITY
|
||||||
|
|
||||||
if (get)
|
if (get)
|
||||||
{
|
{
|
||||||
value = toString (e->currentHp());
|
value = toString (e->currentChaScore1());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sint32 v;
|
sint32 v;
|
||||||
NLMISC::fromString(value, v);
|
NLMISC::fromString(value, v);
|
||||||
e->getScores()._PhysicalScores[SCORES::hit_points].Current = v;
|
e->getScores()._PhysicalScores[SCORES::cha_score1].Current = v;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ENTITY_VARIABLE(MaxHP, "Max hit points of a player")
|
ENTITY_VARIABLE(MaxChaScore1, "Max ChaScore1 of a player")
|
||||||
{
|
{
|
||||||
ENTITY_GET_ENTITY
|
ENTITY_GET_ENTITY
|
||||||
|
|
||||||
if (get)
|
if (get)
|
||||||
{
|
{
|
||||||
value = toString (e->maxHp());
|
value = toString (e->maxChaScore1());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sint32 v;
|
sint32 v;
|
||||||
NLMISC::fromString(value, v);
|
NLMISC::fromString(value, v);
|
||||||
e->getScores()._PhysicalScores[SCORES::hit_points].Max = v;
|
e->getScores()._PhysicalScores[SCORES::cha_score1].Max = v;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1821,7 +1821,7 @@ NLMISC_COMMAND (forceTargetToDie, "(debug) Force entity target to die", "<eid>")
|
||||||
if (target)
|
if (target)
|
||||||
{
|
{
|
||||||
if (!target->isDead())
|
if (!target->isDead())
|
||||||
target->changeCurrentHp(-100000);
|
target->changeCurrentChaScore1(-100000);
|
||||||
|
|
||||||
BotDeathReport.Bots.push_back(target->getEntityRowId());
|
BotDeathReport.Bots.push_back(target->getEntityRowId());
|
||||||
TDataSetRow emptyRow;
|
TDataSetRow emptyRow;
|
||||||
|
@ -2801,7 +2801,7 @@ NLMISC_COMMAND(respawnAfterDeath,"respawnAfterDeath at re-spawn point name, it m
|
||||||
//-----------------------------------------------
|
//-----------------------------------------------
|
||||||
// Simulate Resurrection by other PC until UI is ready
|
// Simulate Resurrection by other PC until UI is ready
|
||||||
//-----------------------------------------------
|
//-----------------------------------------------
|
||||||
NLMISC_COMMAND(resurrected,"Another PC resurrect PC by giving some energy","<player id(id:type:crea:dyn)><Hp gived><Sta gived><Sap gived><Focus gived>")
|
NLMISC_COMMAND(resurrected,"Another PC resurrect PC by giving some energy","<player id(id:type:crea:dyn)><ChaScore1 removed><ChaScore2 removed><ChaScore3 removed><ChaScore4 gived>")
|
||||||
{
|
{
|
||||||
if( args.size() == 1 )
|
if( args.size() == 1 )
|
||||||
{
|
{
|
||||||
|
@ -3716,7 +3716,7 @@ NLMISC_COMMAND( killMob, "kill a mob ( /a killMob )", "<CSR eId>" )
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
creature->getScores()._PhysicalScores[SCORES::hit_points].Current = 0;
|
creature->getScores()._PhysicalScores[SCORES::cha_score1].Current = 0;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4121,9 +4121,9 @@ NLMISC_COMMAND (targetInfos, "give infos on the target", "")
|
||||||
answer = "invalid creature target";
|
answer = "invalid creature target";
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
answer = NLMISC::toString( "HP : %u / %u",
|
answer = NLMISC::toString( "ChaScore1 : %u / %u",
|
||||||
target->getScores()._PhysicalScores[SCORES::hit_points].Current(),
|
target->getScores()._PhysicalScores[SCORES::cha_score1].Current(),
|
||||||
target->getScores()._PhysicalScores[SCORES::hit_points].Max() );
|
target->getScores()._PhysicalScores[SCORES::cha_score1].Max() );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if ( c->getTarget().getType() == RYZOMID::player )
|
else if ( c->getTarget().getType() == RYZOMID::player )
|
||||||
|
@ -4134,11 +4134,11 @@ NLMISC_COMMAND (targetInfos, "give infos on the target", "")
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
const std::vector< SCharacteristicsAndScores > & scores = target->getScores()._PhysicalScores;
|
const std::vector< SCharacteristicsAndScores > & scores = target->getScores()._PhysicalScores;
|
||||||
answer = NLMISC::toString( "HP : %d / %d \nSAP : %d / %d \nSTA : %d / %d \nFOCUS : %d / %d \n",
|
answer = NLMISC::toString( "ChaScore1 : %d / %d \nChaScore3 : %d / %d \nChaScore2 : %d / %d \nChaScore4 : %d / %d \n",
|
||||||
scores[SCORES::hit_points].Current(),scores[SCORES::hit_points].Max(),
|
scores[SCORES::cha_score1].Current(),scores[SCORES::cha_score1].Max(),
|
||||||
scores[SCORES::sap].Current(),scores[SCORES::sap].Max(),
|
scores[SCORES::cha_score3].Current(),scores[SCORES::cha_score3].Max(),
|
||||||
scores[SCORES::stamina].Current(),scores[SCORES::stamina].Max(),
|
scores[SCORES::cha_score2].Current(),scores[SCORES::cha_score2].Max(),
|
||||||
scores[SCORES::focus].Current(),scores[SCORES::focus].Max() );
|
scores[SCORES::cha_score4].Current(),scores[SCORES::cha_score4].Max() );
|
||||||
answer += "\n Displaying skills > 1:\n";
|
answer += "\n Displaying skills > 1:\n";
|
||||||
for ( uint i = 0; i < target->getSkills()._Skills.size();i++ )
|
for ( uint i = 0; i < target->getSkills()._Skills.size();i++ )
|
||||||
{
|
{
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue