Fixed Abjurant Champion marker feat issue
Fixed Abjurant Champion marker feat issue. Fixed icons for Necropolitan & Corrupt Spell Focus. Updated Saint's ability to only allow living saints. Tweaked Heavy Pick & Falchion icon sizes. Updated release archive.
This commit is contained in:
parent
680acc6248
commit
759cd7a242
1
.gitignore
vendored
1
.gitignore
vendored
@ -19,3 +19,4 @@ trunk/compileepic.bat
|
|||||||
*.erf
|
*.erf
|
||||||
*.log
|
*.log
|
||||||
nwn/nwnprc/trunk/makefile.temp
|
nwn/nwnprc/trunk/makefile.temp
|
||||||
|
nwn/nwnprc/trunk/makefile.temp
|
||||||
|
BIN
Release/PRC8_20240315.7z
Normal file
BIN
Release/PRC8_20240315.7z
Normal file
Binary file not shown.
@ -116,15 +116,15 @@
|
|||||||
112 83664 craftbase 2 2 0x00000 0 0 it_midmisc 0 1 1 1 it_bag iinvalid_2x2 0 1 0 **** **** **** 0 255 **** **** **** **** 16 0 1 1 83698 29 8 0 15 4 **** **** **** **** **** **** 0 0 5449 0 0 5 **** **** 1 **** **** **** **** 0 1 **** **** **** **** **** **** **** **** **** ****
|
112 83664 craftbase 2 2 0x00000 0 0 it_midmisc 0 1 1 1 it_bag iinvalid_2x2 0 1 0 **** **** **** 0 255 **** **** **** **** 16 0 1 1 83698 29 8 0 15 4 **** **** **** **** **** **** 0 0 5449 0 0 5 **** **** 1 **** **** **** **** 0 1 **** **** **** **** **** **** **** **** **** ****
|
||||||
113 **** padding **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
113 **** padding **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||||
114 **** START_NWNEE_WPN_FEATS **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
114 **** START_NWNEE_WPN_FEATS **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||||
115 67252 heavypick 2 3 0x1c030 1 2 wblph 0 1 1 1 it_bag iwblph 0 **** 1 3 **** 1.4 10 255 1 6 1 4 1 8 1 2 16807222 9 8 0 0 1 **** **** **** **** **** 4 0 0 16807223 0 1 60 17 **** **** **** 100 100 0 73 1 24602 24614 24626 24638 24650 24662 24674 24686 **** ****
|
115 67252 heavypick 2 4 0x1c030 1 2 wblph 0 1 1 1 it_bag iwblph 0 **** 1 3 **** 1.4 10 255 1 6 1 4 1 8 1 2 16807222 9 8 0 0 1 **** **** **** **** **** 4 0 0 16807223 0 1 60 17 **** **** **** 100 100 0 73 1 24602 24614 24626 24638 24650 24662 24674 24686 **** ****
|
||||||
116 67256 lightpick 1 2 0x1c030 1 2 wblpl 0 1 1 1 it_bag iwblpl 0 **** 1 2 **** 1.1 10 255 1 4 1 4 1 4 1 2 16807225 13 8 0 0 1 **** **** **** **** **** 4 0 0 16807226 0 1 40 2 **** **** **** 100 100 0 27 1 24603 24615 24627 24639 24651 24663 24675 24687 **** 2
|
116 67256 lightpick 1 2 0x1c030 1 2 wblpl 0 1 1 1 it_bag iwblpl 0 **** 1 2 **** 1.1 10 255 1 4 1 4 1 4 1 2 16807225 13 8 0 0 1 **** **** **** **** **** 4 0 0 16807226 0 1 40 2 **** **** **** 100 100 0 27 1 24603 24615 24627 24639 24651 24663 24675 24687 **** 2
|
||||||
117 16807227 sai 1 1 0x1C030 0 2 wswsi 0 1 1 1 it_bag iwswsi 0 **** 2 1 **** 1.1 10 255 1 4 2 2 1 3 1 2 16807228 7 8 0 0 1 **** **** **** **** **** 4 0 0 16807229 0 1 10 18 **** **** **** 100 100 0 9 1 24604 24616 24628 24640 24652 24664 24676 24688 1 2
|
117 16807227 sai 1 1 0x1C030 0 2 wswsi 0 1 1 1 it_bag iwswsi 0 **** 2 1 **** 1.1 10 255 1 4 2 2 1 3 1 2 16807228 7 8 0 0 1 **** **** **** **** **** 4 0 0 16807229 0 1 10 18 **** **** **** 100 100 0 9 1 24604 24616 24628 24640 24652 24664 24676 24688 1 2
|
||||||
118 16807230 nunchaku 1 3 0x1C030 1 2 wblnn 0 1 1 1 it_bag iwblnn 0 **** 2 2 **** 1.4 10 255 1 6 1 2 1 2 1 2 16807231 12 8 0 0 1 **** **** **** **** **** 4 0 0 16807232 0 1 20 3 **** **** **** 100 100 0 74 1 24605 24617 24629 24641 24653 24665 24677 24689 1 2
|
118 16807230 nunchaku 1 3 0x1C030 1 2 wblnn 0 1 1 1 it_bag iwblnn 0 **** 2 2 **** 1.4 10 255 1 6 1 2 1 2 1 2 16807231 12 8 0 0 1 **** **** **** **** **** 4 0 0 16807232 0 1 20 3 **** **** **** 100 100 0 74 1 24605 24617 24629 24641 24653 24665 24677 24689 1 2
|
||||||
119 16807233 falchion 2 4 0x1C030 1 2 wswfa 0 1 1 1 it_bag iwswfa 0 **** 3 3 **** 1.6 10 255 2 4 3 2 1 75 1 2 16807234 9 8 0 0 1 **** **** **** **** **** 4 0 0 16807235 0 1 80 11 **** **** **** 100 100 0 99 1 24606 24618 24630 24642 24654 24666 24678 24690 **** ****
|
119 16807233 falchion 2 5 0x1C030 1 2 wswfa 0 1 1 1 it_bag iwswfa 0 **** 3 3 **** 1.6 10 255 2 4 3 2 1 75 1 2 16807234 9 8 0 0 1 **** **** **** **** **** 4 0 0 16807235 0 1 80 11 **** **** **** 100 100 0 99 1 24606 24618 24630 24642 24654 24666 24678 24690 **** ****
|
||||||
120 16807242 sap 1 1 0x1C030 1 2 wspsp 0 0 0 0 it_bag iwspsp 0 **** 2 2 **** 1.2 10 255 1 6 1 2 1 1 1 2 16807243 13 8 0 0 1 **** **** **** **** **** 4 0 0 16807244 0 1 20 2 **** **** **** 100 100 0 44 1 24607 24619 24631 24643 24655 24667 24679 24691 **** 1
|
120 16807242 sap 1 1 0x1C030 1 2 wspsp 0 0 0 0 it_bag iwspsp 0 **** 2 2 **** 1.2 10 255 1 6 1 2 1 1 1 2 16807243 13 8 0 0 1 **** **** **** **** **** 4 0 0 16807244 0 1 20 2 **** **** **** 100 100 0 44 1 24607 24619 24631 24643 24655 24667 24679 24691 **** 1
|
||||||
121 16807248 katar 1 1 0x1C030 1 2 wswdp 0 1 1 1 it_bag iwswdp 0 **** 1 1 **** 1.1 10 255 1 4 1 3 1 2 1 2 16807249 7 8 0 0 1 **** **** **** **** **** 4 0 0 16807250 0 1 10 11 **** **** **** 50 50 50 77 1 24608 24620 24632 24644 24656 24668 24680 24692 **** 1
|
121 16807248 katar 1 1 0x1C030 1 2 wswdp 0 1 1 1 it_bag iwswdp 0 **** 1 1 **** 1.1 10 255 1 4 1 3 1 2 1 2 16807249 7 8 0 0 1 **** **** **** **** **** 4 0 0 16807250 0 1 10 11 **** **** **** 50 50 50 77 1 24608 24620 24632 24644 24656 24668 24680 24692 **** 1
|
||||||
122 16807269 heavy_mace 1 3 0x1C030 1 2 wxblmh 0 1 1 1 it_bag iwxblmh 0 **** 2 3 **** 1.2 10 255 1 8 1 2 1 6 1 2 16807270 14 8 0 0 1 **** **** **** **** **** 4 0 0 16807271 0 1 80 2 **** **** **** 100 100 0 99 1 24609 24621 24633 24645 24657 24669 24681 24693 **** ****
|
122 16807269 heavy_mace 1 3 0x1C030 1 2 wxblmh 0 1 1 1 it_bag iwxblmh 0 **** 2 3 **** 1.2 10 255 1 8 1 2 1 6 1 2 16807270 14 8 0 0 1 **** **** **** **** **** 4 0 0 16807271 0 1 80 2 **** **** **** 100 100 0 99 1 24609 24621 24633 24645 24657 24669 24681 24693 **** ****
|
||||||
123 16807272 maul 2 4 0x1C030 1 2 wxblma 0 1 1 1 it_bag iwxblma 0 **** 2 3 **** 1.2 10 255 1 10 1 3 1 8 1 2 16807273 14 8 0 0 1 **** **** **** **** **** 4 0 0 16807274 0 1 200 12 **** **** **** 100 100 0 99 1 24610 24622 24634 24646 24658 24670 24682 24694 **** ****
|
123 16807272 maul 2 5 0x1C030 1 2 wxblma 0 1 1 1 it_bag iwxblma 0 **** 2 3 **** 1.2 10 255 1 10 1 3 1 8 1 2 16807273 14 8 0 0 1 **** **** **** **** **** 4 0 0 16807274 0 1 200 12 **** **** **** 100 100 0 99 1 24610 24622 24634 24646 24658 24670 24682 24694 **** ****
|
||||||
124 16807275 scimitar_double 2 5 0x1c010 1 2 wxdbsc 0 1 1 1 it_bag iwxdbsc 0 8 3 4 **** 1.5 10 255 1 6 3 2 1 63 1 2 16807276 10 8 0 0 1 **** **** **** **** **** 4 0 0 16807277 0 1 150 11 **** **** **** 50 50 50 99 1 24611 24623 24635 24647 24659 24671 24683 24695 **** ****
|
124 16807275 scimitar_double 2 5 0x1c010 1 2 wxdbsc 0 1 1 1 it_bag iwxdbsc 0 8 3 4 **** 1.5 10 255 1 6 3 2 1 63 1 2 16807276 10 8 0 0 1 **** **** **** **** **** 4 0 0 16807277 0 1 150 11 **** **** **** 50 50 50 99 1 24611 24623 24635 24647 24659 24671 24683 24695 **** ****
|
||||||
125 16807284 goad 1 2 0x1C030 0 2 wspgd 0 1 1 1 it_bag iwspgd 0 **** 1 2 **** 1.1 10 255 1 6 1 2 1 6 1 2 16807285 8 8 0 0 1 **** **** **** **** **** 4 0 0 16807286 0 1 30 18 **** **** **** 35 35 65 22 1 24612 24624 24636 24348 24660 24672 24684 24596 **** 2
|
125 16807284 goad 1 2 0x1C030 0 2 wspgd 0 1 1 1 it_bag iwspgd 0 **** 1 2 **** 1.1 10 255 1 6 1 2 1 6 1 2 16807285 8 8 0 0 1 **** **** **** **** **** 4 0 0 16807286 0 1 30 18 **** **** **** 35 35 65 22 1 24612 24624 24636 24348 24660 24672 24684 24596 **** 2
|
||||||
126 16793718 eagleclaw 1 2 0x1C030 1 2 wswec 0 1 1 1 it_bag iwswec 0 **** 4 2 **** 1.2 10 255 1 6 3 2 1 20 1 2 16793719 8 8 0 0 1 **** **** **** **** **** 4 0 0 16793720 0 1 20 1 **** **** **** 35 35 65 19 1 24721 24722 24723 24724 24725 24726 24727 24728 **** 2
|
126 16793718 eagleclaw 1 2 0x1C030 1 2 wswec 0 1 1 1 it_bag iwswec 0 **** 4 2 **** 1.2 10 255 1 6 3 2 1 20 1 2 16793719 8 8 0 0 1 **** **** **** **** **** 4 0 0 16793720 0 1 20 1 **** **** **** 35 35 65 19 1 24721 24722 24723 24724 24725 24726 24727 24728 **** 2
|
||||||
|
@ -5273,7 +5273,7 @@
|
|||||||
5269 HauntingMelody 16835021 16835022 is_X1Dirge **** **** **** **** **** **** **** **** 257 **** 0 0 1 **** **** 2722 **** 0.5 -1 **** **** **** **** **** **** **** 11 9 **** **** FEAT_HEX_SWIFT 5 0 **** **** **** **** 0 1
|
5269 HauntingMelody 16835021 16835022 is_X1Dirge **** **** **** **** **** **** **** **** 257 **** 0 0 1 **** **** 2722 **** 0.5 -1 **** **** **** **** **** **** **** 11 9 **** **** FEAT_HEX_SWIFT 5 0 **** **** **** **** 0 1
|
||||||
5270 Deformity_Skin 16835033 16835034 ife_X2ArSkin **** **** **** **** **** **** **** **** 4408 **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
5270 Deformity_Skin 16835033 16835034 ife_X2ArSkin **** **** **** **** **** **** **** **** 4408 **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
||||||
5271 GreaterCorruptSpellFocus 16835019 16835020 tg_hungryskull **** **** **** **** **** **** **** **** 5272 **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
5271 GreaterCorruptSpellFocus 16835019 16835020 tg_hungryskull **** **** **** **** **** **** **** **** 5272 **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
||||||
5272 CorruptSpellFocus 16835017 16835018 tg_necro **** **** **** **** **** **** **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
5272 CorruptSpellFocus 16835017 16835018 tg_bigskull **** **** **** **** **** **** **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
||||||
5273 ShieldWall 16835015 16835016 ife_x3_pdkhshld **** **** **** **** **** **** **** **** 32 **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
5273 ShieldWall 16835015 16835016 ife_x3_pdkhshld **** **** **** **** **** **** **** **** 32 **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
||||||
5274 GreatDiplomat 16835013 16835014 ife_X2EpicRepu **** **** **** **** **** **** **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
5274 GreatDiplomat 16835013 16835014 ife_X2EpicRepu **** **** **** **** **** **** **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
||||||
5275 Ecclesiarch 16835011 16835012 ife_X2EpicRepu **** **** **** **** **** **** **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** 7 6 **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
5275 Ecclesiarch 16835011 16835012 ife_X2EpicRepu **** **** **** **** **** **** **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** 7 6 **** **** FEAT_BLADE_MEDITATION **** **** **** **** **** **** **** 1
|
||||||
@ -18095,13 +18095,12 @@
|
|||||||
18091 FEAT_OLLAM_MYSTERY_SHADOWSMITH 16852657 16852688 IR_TEMPUS **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_OLLAM_MYSTERY_SHADOWSMITH 6 0 1 98 **** **** 0 0
|
18091 FEAT_OLLAM_MYSTERY_SHADOWSMITH 16852657 16852688 IR_TEMPUS **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_OLLAM_MYSTERY_SHADOWSMITH 6 0 1 98 **** **** 0 0
|
||||||
18092 FEAT_TIAMAT_MYSTERY_SHADOWSMITH 16852658 16852688 IR_TEMPUS **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_TIAMAT_MYSTERY_SHADOWSMITH 6 0 1 98 **** **** 0 0
|
18092 FEAT_TIAMAT_MYSTERY_SHADOWSMITH 16852658 16852688 IR_TEMPUS **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_TIAMAT_MYSTERY_SHADOWSMITH 6 0 1 98 **** **** 0 0
|
||||||
18093 FEAT_ORCUS_MYSTERY_SHADOWSMITH 16852659 16852688 IR_TEMPUS **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_ORCUS_MYSTERY_SHADOWSMITH 6 0 1 98 **** **** 0 0
|
18093 FEAT_ORCUS_MYSTERY_SHADOWSMITH 16852659 16852688 IR_TEMPUS **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_ORCUS_MYSTERY_SHADOWSMITH 6 0 1 98 **** **** 0 0
|
||||||
18094 FEAT_ALIEN_NONE 16852660 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_ALIEN_NONE 6 0 1 **** **** **** 0 0
|
18094 FEAT_ALIENIST_NONE 16852660 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_ALIEN_NONE 6 0 1 **** **** **** 0 0
|
||||||
18095 FEAT_DRAGONSONG_NONE 16852661 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_DRAGONSONG_NONE 6 0 1 **** **** **** 0 0
|
18095 FEAT_DRAGONSONG_NONE 16852661 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_DRAGONSONG_NONE 6 0 1 **** **** **** 0 0
|
||||||
18096 FEAT_ESAVANT_NONE 16852662 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_ESAVANT_NONE 6 0 1 **** **** **** 0 0
|
18096 FEAT_ESAVANT_NONE 16852662 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_ESAVANT_NONE 6 0 1 **** **** **** 0 0
|
||||||
18097 FEAT_MYSTICTHEURGE_NONE 16852663 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_MYSTICTHEURGE_NONE 6 0 1 **** **** **** 0 0
|
18097 FEAT_MYSTICTHEURGE_NONE 16852663 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_MYSTICTHEURGE_NONE 6 0 1 **** **** **** 0 0
|
||||||
18098 FEAT_OLLAM_NONE 16852664 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_OLLAM_NONE 6 0 1 **** **** **** 0 0
|
18098 FEAT_OLLAM_NONE 16852664 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_OLLAM_NONE 6 0 1 **** **** **** 0 0
|
||||||
18099 FEAT_ORCUS_NONE 16852665 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_ORCUS_NONE 6 0 1 **** **** **** 0 0
|
18099 FEAT_ORCUS_NONE 16852665 16852689 IR_NOPE **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_ORCUS_NONE 6 0 1 **** **** **** 0 0
|
||||||
18100 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
|
||||||
18101 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
18101 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||||
18102 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
18102 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||||
18103 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
18103 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||||
@ -22624,7 +22623,7 @@
|
|||||||
22620 Half_Celestial_Resurrection 903 6247 is_Resurrec **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 1 16322 **** 1 1 **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_CELESTIAL_RESURRECTION 5 0 **** **** **** **** 0 0
|
22620 Half_Celestial_Resurrection 903 6247 is_Resurrec **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 1 16322 **** 1 1 **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_CELESTIAL_RESURRECTION 5 0 **** **** **** **** 0 0
|
||||||
22621 Half_Celestial_Daylight 16832214 16832215 is_dawn **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 16323 **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_CELESTIAL_DAYLIGHT **** **** **** **** **** **** **** 0
|
22621 Half_Celestial_Daylight 16832214 16832215 is_dawn **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 16323 **** **** **** **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_CELESTIAL_DAYLIGHT **** **** **** **** **** **** **** 0
|
||||||
22622 Half_Celestial_Marker 16847224 16847225 **** **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 1 **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_CELESTIAL_MARKER 5 0 **** **** **** **** 0 1
|
22622 Half_Celestial_Marker 16847224 16847225 **** **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 1 **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_CELESTIAL_MARKER 5 0 **** **** **** **** 0 1
|
||||||
22623 Necropolitan_Marker 16847637 16847638 **** **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 1 **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_NECROPOLITAN_MARKER 5 0 **** **** **** **** 0 1
|
22623 Necropolitan_Marker 16847637 16847638 tg_bigskull **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 1 **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_NECROPOLITAN_MARKER 5 0 **** **** **** **** 0 1
|
||||||
22624 Half_Fiendish_Smite_Good 3779 16847221 ife_X1SmGood **** **** **** **** **** **** **** **** **** **** 0 0 0 22 1 16324 **** 1 1 **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_FIENDISH_SMITE_EVIL 5 1 **** **** **** **** 0 1
|
22624 Half_Fiendish_Smite_Good 3779 16847221 ife_X1SmGood **** **** **** **** **** **** **** **** **** **** 0 0 0 22 1 16324 **** 1 1 **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_FIENDISH_SMITE_EVIL 5 1 **** **** **** **** 0 1
|
||||||
22625 Half_Fiendish_Darkness 786 6132 is_Darkness **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 1 16325 **** 1 3 **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_FIENDISH_DARKNESS 5 0 **** **** **** **** 0 0
|
22625 Half_Fiendish_Darkness 786 6132 is_Darkness **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 1 16325 **** 1 3 **** **** **** **** **** **** **** **** **** **** **** FEAT_TEMPLATE_HALF_FIENDISH_DARKNESS 5 0 **** **** **** **** 0 0
|
||||||
22626 Half_Fiendish_Desecrate **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 0
|
22626 Half_Fiendish_Desecrate **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 0
|
||||||
|
@ -4280,28 +4280,29 @@ const int FEAT_TIAMAT_MYSTERY_SHADOWSMITH = 18092;
|
|||||||
const int FEAT_ORCUS_MYSTERY_SHADOWSMITH = 18093;
|
const int FEAT_ORCUS_MYSTERY_SHADOWSMITH = 18093;
|
||||||
|
|
||||||
//:: None marker feats
|
//:: None marker feats
|
||||||
const int FEAT_ABCHAMP_NONE = 18034;
|
const int FEAT_ABCHAMP_NONE = 18036;
|
||||||
const int FEAT_AOTS_NONE = 18035;
|
const int FEAT_AOTS_NONE = 18037;
|
||||||
const int FEAT_ANIMA_NONE = 18036;
|
const int FEAT_ANIMA_NONE = 18038;
|
||||||
const int FEAT_ARCTRICK_NONE = 18037;
|
const int FEAT_ARCTRICK_NONE = 18039;
|
||||||
const int FEAT_BLDMAGUS_NONE = 18038;
|
const int FEAT_BLDMAGUS_NONE = 18040;
|
||||||
const int FEAT_ASMODEUS_NONE = 18039;
|
const int FEAT_ASMODEUS_NONE = 18041;
|
||||||
const int FEAT_ENLIGHTENEDFIST_NONE = 18040;
|
const int FEAT_ENLIGHTENEDFIST_NONE = 18042;
|
||||||
const int FEAT_MAESTER_NONE = 18041;
|
const int FEAT_MAESTER_NONE = 18043;
|
||||||
const int FEAT_TIAMAT_NONE = 18042;
|
const int FEAT_TIAMAT_NONE = 18044;
|
||||||
const int FEAT_UNSEEN_NONE = 18043;
|
const int FEAT_UNSEEN_NONE = 18045;
|
||||||
const int FEAT_VIRTUOSO_NONE = 18044;
|
const int FEAT_VIRTUOSO_NONE = 18046;
|
||||||
const int FEAT_WILDMAGE_NONE = 18045;
|
const int FEAT_WILDMAGE_NONE = 18047;
|
||||||
|
|
||||||
|
const int FEAT_ALIENIST_NONE = 18094;
|
||||||
|
const int FEAT_DRAGONSONG_NONE = 18095;
|
||||||
|
const int FEAT_ESAVANT_NONE = 18096;
|
||||||
|
const int FEAT_MYSTICTHEURGE_NONE = 18097;
|
||||||
|
const int FEAT_OLLAM_NONE = 18098;
|
||||||
|
const int FEAT_ORCUS_NONE = 18099;
|
||||||
|
|
||||||
|
const int FEAT_SANCTIFIED_MIND_MANIFEST_NONE = 18173;
|
||||||
|
const int FEAT_SOULCASTER_MANIFEST_NONE = 18174;
|
||||||
|
|
||||||
const int FEAT_ALIENIST_NONE = 18095;
|
|
||||||
const int FEAT_CHILDNIGHT_NONE = 18096;
|
|
||||||
const int FEAT_DRAGONSONG_NONE = 18097;
|
|
||||||
const int FEAT_ESAVANT_NONE = 18098;
|
|
||||||
const int FEAT_MASTERSHADOW_NONE = 18099;
|
|
||||||
const int FEAT_MYSTICTHEURGE_NONE = 18100;
|
|
||||||
const int FEAT_NOCTUMANCER_NONE = 18101;
|
|
||||||
const int FEAT_OLLAM_NONE = 18102;
|
|
||||||
const int FEAT_ORCUS_NONE = 18103;
|
|
||||||
|
|
||||||
//:: Fist of Zuoken marker feats
|
//:: Fist of Zuoken marker feats
|
||||||
const int FEAT_CEREBREMANCER_MANIFEST_FOZ = 18130;
|
const int FEAT_CEREBREMANCER_MANIFEST_FOZ = 18130;
|
||||||
@ -4357,10 +4358,3 @@ const int FEAT_PSYCHIC_THEURGE_MANIFEST_WILDER = 18169;
|
|||||||
const int FEAT_SANCTIFIED_MIND_MANIFEST_WILDER = 18170;
|
const int FEAT_SANCTIFIED_MIND_MANIFEST_WILDER = 18170;
|
||||||
const int FEAT_SHADOWMIND_MANIFEST_WILDER = 18171;
|
const int FEAT_SHADOWMIND_MANIFEST_WILDER = 18171;
|
||||||
const int FEAT_SOULCASTER_MANIFEST_WILDER = 18172;
|
const int FEAT_SOULCASTER_MANIFEST_WILDER = 18172;
|
||||||
|
|
||||||
//: Other Psionic marker feats
|
|
||||||
const int FEAT_SANCTIFIED_MIND_MANIFEST_NONE = 18173;
|
|
||||||
const int FEAT_SOULCASTER_MANIFEST_NONE = 18174;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -6838,7 +6838,6 @@ epicspellobjs\wander_unseen.ncs
|
|||||||
2das\disease.2da \
|
2das\disease.2da \
|
||||||
2das\dmgxp.2da \
|
2das\dmgxp.2da \
|
||||||
2das\domains.2da \
|
2das\domains.2da \
|
||||||
2das\ds_feat.2da \
|
|
||||||
2das\ecl.2da \
|
2das\ecl.2da \
|
||||||
2das\effecticons.2da \
|
2das\effecticons.2da \
|
||||||
2das\encounter_areas.2da \
|
2das\encounter_areas.2da \
|
||||||
|
@ -109,21 +109,25 @@ int AbjurantChampionMarkerFeats()
|
|||||||
{
|
{
|
||||||
if(GetLevelByClass(CLASS_TYPE_ABJURANT_CHAMPION))
|
if(GetLevelByClass(CLASS_TYPE_ABJURANT_CHAMPION))
|
||||||
{
|
{
|
||||||
int nAbChamp = GetHasFeat(FEAT_ABCHAMP_INVOKING_WARLOCK)
|
int nAbChamp;
|
||||||
+ GetHasFeat(FEAT_ABCHAMP_INVOKING_DFA)
|
|
||||||
+ GetHasFeat(FEAT_ABCHAMP_INVOKING_DRAGON_SHAMAN)
|
nAbChamp =+ GetHasFeat(FEAT_ABCHAMP_INVOKING_WARLOCK);
|
||||||
+ GetHasFeat(FEAT_ABCHAMP_NONE);
|
nAbChamp =+ GetHasFeat(FEAT_ABCHAMP_INVOKING_DFA);
|
||||||
|
nAbChamp =+ GetHasFeat(FEAT_ABCHAMP_INVOKING_DRAGON_SHAMAN);
|
||||||
|
nAbChamp =+ GetHasFeat(FEAT_ABCHAMP_NONE);
|
||||||
|
|
||||||
|
//FloatingTextStringOnCreature("nAbChamp = " + IntToString(nAbChamp), OBJECT_SELF, FALSE);
|
||||||
|
|
||||||
if(nAbChamp > 1)
|
if(nAbChamp > 1)
|
||||||
{
|
{
|
||||||
FloatingTextStringOnCreature("An Abjurant Champion may only advance a single arcane or invoker class.", OBJECT_SELF, FALSE);
|
FloatingTextStringOnCreature("An Abjurant Champion may only advance a single invoker class, or N/A for arcane spellcasting.", OBJECT_SELF, FALSE);
|
||||||
FloatingTextStringOnCreature("Please reselect your feats.", OBJECT_SELF, FALSE);
|
FloatingTextStringOnCreature("Please reselect your feats.", OBJECT_SELF, FALSE);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(nAbChamp < 1)
|
if(nAbChamp < 1)
|
||||||
{
|
{
|
||||||
FloatingTextStringOnCreature("A Abjurant Champion must pick one arcane or invoker class to advance at first level.", OBJECT_SELF, FALSE);
|
FloatingTextStringOnCreature("A Abjurant Champion must pick an invoker class to advance at first level, or pick N/A for an arcane spellcaster.", OBJECT_SELF, FALSE);
|
||||||
FloatingTextStringOnCreature("Please reselect your feats.", OBJECT_SELF, FALSE);
|
FloatingTextStringOnCreature("Please reselect your feats.", OBJECT_SELF, FALSE);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
@ -609,7 +613,7 @@ int MaesterMarkerFeats()
|
|||||||
//:: Enforces Master of Shadows marker feats
|
//:: Enforces Master of Shadows marker feats
|
||||||
int MasterShadowMarkerFeats()
|
int MasterShadowMarkerFeats()
|
||||||
{
|
{
|
||||||
if(GetLevelByClass(CLASS_TYPE_MAGEKILLER))
|
if(GetLevelByClass(CLASS_TYPE_MASTER_OF_SHADOW))
|
||||||
{
|
{
|
||||||
int nShadow = GetHasFeat(FEAT_MASTERSHADOW_MYSTERY_SHADOWCASTER)
|
int nShadow = GetHasFeat(FEAT_MASTERSHADOW_MYSTERY_SHADOWCASTER)
|
||||||
+ GetHasFeat(FEAT_MASTERSHADOW_MYSTERY_SHADOWSMITH);
|
+ GetHasFeat(FEAT_MASTERSHADOW_MYSTERY_SHADOWSMITH);
|
||||||
|
@ -82,22 +82,26 @@ void main()
|
|||||||
//:: Not being called from an event but from EvalPRCFeats. No non-good Saints.
|
//:: Not being called from an event but from EvalPRCFeats. No non-good Saints.
|
||||||
if(nEvent == FALSE && GetAlignmentGoodEvil(oPC) == ALIGNMENT_GOOD)
|
if(nEvent == FALSE && GetAlignmentGoodEvil(oPC) == ALIGNMENT_GOOD)
|
||||||
{
|
{
|
||||||
|
//:: Any living creature of good alignment that is not an outsider or an elemental
|
||||||
//:: Add Darkvision
|
int nRace = MyPRCGetRacialType(oPC);
|
||||||
|
if(!(nRace == RACIAL_TYPE_CONSTRUCT ||
|
||||||
|
nRace == RACIAL_TYPE_ELEMENTAL ||
|
||||||
|
nRace == RACIAL_TYPE_OOZE ||
|
||||||
|
nRace == RACIAL_TYPE_OUTSIDER ||
|
||||||
|
nRace == RACIAL_TYPE_UNDEAD))
|
||||||
|
{
|
||||||
|
//:: Add Darkvision
|
||||||
ipIP = ItemPropertyDarkvision();
|
ipIP = ItemPropertyDarkvision();
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
|
//:: Add Low-Light Vision
|
||||||
//:: Add Low-Light Vision
|
|
||||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_LOWLIGHT_VISION);
|
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_LOWLIGHT_VISION);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
|
//:: Wisdom based AC bonus
|
||||||
//:: Wisdom based AC bonus
|
|
||||||
SetCompositeBonus(oSkin, "Template_Saint_AC", iWISb, ITEM_PROPERTY_AC_BONUS);
|
SetCompositeBonus(oSkin, "Template_Saint_AC", iWISb, ITEM_PROPERTY_AC_BONUS);
|
||||||
|
|
||||||
|
//:: Hit Die based Damage Reduction
|
||||||
//:: Hit Die based Damage Reduction
|
|
||||||
if (iHD >= 12)
|
if (iHD >= 12)
|
||||||
{
|
{
|
||||||
ipIP = ItemPropertyDamageReduction(IP_CONST_DAMAGEREDUCTION_5, IP_CONST_DAMAGESOAK_10_HP);
|
ipIP = ItemPropertyDamageReduction(IP_CONST_DAMAGEREDUCTION_5, IP_CONST_DAMAGESOAK_10_HP);
|
||||||
@ -118,46 +122,44 @@ void main()
|
|||||||
|
|
||||||
else if (iHD <= 3) {/*:: you get nothing! */}
|
else if (iHD <= 3) {/*:: you get nothing! */}
|
||||||
|
|
||||||
|
//:: Set HD based Fast Healing
|
||||||
//:: Set HD based Fast Healing
|
//ebonfowl: I think this is supposed to be HD/2 to a max of 10
|
||||||
//ebonfowl: I think this is supposed to be HD/2 to a max of 10
|
|
||||||
int nFastHealing = iHD/2;
|
int nFastHealing = iHD/2;
|
||||||
if (nFastHealing > 10) {nFastHealing == 10;}
|
if (nFastHealing > 10) {nFastHealing == 10;}
|
||||||
SetCompositeBonus(oSkin, "Template_Saint_FastHealing", nFastHealing, ITEM_PROPERTY_REGENERATION);
|
SetCompositeBonus(oSkin, "Template_Saint_FastHealing", nFastHealing, ITEM_PROPERTY_REGENERATION);
|
||||||
|
|
||||||
|
|
||||||
//:: Set racial type to Outsider (Native)
|
//:: Set racial type to Outsider (Native)
|
||||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_OUTSIDER_RACIAL_TYPE);
|
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_OUTSIDER_RACIAL_TYPE);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
SetSubRace(oPC, "Outsider (Native)");
|
SetSubRace(oPC, "Outsider (Native)");
|
||||||
|
|
||||||
|
//:: Set Acid Immunity
|
||||||
//:: Set Acid Immunity
|
|
||||||
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_ACID,IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_ACID,IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
|
|
||||||
//:: Set Cold Immunity
|
//:: Set Cold Immunity
|
||||||
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_COLD,IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_COLD,IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
|
|
||||||
//:: Set Electrical Immunity
|
//:: Set Electrical Immunity
|
||||||
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_ELECTRICAL,IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
ipIP = ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_ELECTRICAL,IP_CONST_DAMAGEIMMUNITY_100_PERCENT);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
|
|
||||||
//:: +4 Save vs. Poison
|
//:: +4 Save vs. Poison
|
||||||
ipIP = ItemPropertyBonusSavingThrowVsX(IP_CONST_SAVEVS_POISON, 4);
|
ipIP = ItemPropertyBonusSavingThrowVsX(IP_CONST_SAVEVS_POISON, 4);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
|
|
||||||
//:: Resistance to Fire 10
|
//:: Resistance to Fire 10
|
||||||
ipIP = ItemPropertyDamageResistance(IP_CONST_DAMAGETYPE_FIRE, IP_CONST_DAMAGERESIST_10);
|
ipIP = ItemPropertyDamageResistance(IP_CONST_DAMAGETYPE_FIRE, IP_CONST_DAMAGERESIST_10);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
|
|
||||||
//:: Set Petrification Immunity (has to be done per spell, thanks Bioware!)
|
//:: Set Petrification Immunity (has to be done per spell, thanks Bioware!)
|
||||||
ipIP = ItemPropertySpellImmunitySpecific(216); //:: Flesh to Stone
|
ipIP = ItemPropertySpellImmunitySpecific(216); //:: Flesh to Stone
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
ipIP = ItemPropertySpellImmunitySpecific(218); //:: Breath, Petrify
|
ipIP = ItemPropertySpellImmunitySpecific(218); //:: Breath, Petrify
|
||||||
@ -177,15 +179,13 @@ void main()
|
|||||||
ipIP = ItemPropertySpellImmunitySpecific(247); //:: Gorgon Mask
|
ipIP = ItemPropertySpellImmunitySpecific(247); //:: Gorgon Mask
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
|
//:: Set Ability Score Bonuses
|
||||||
//:: Set Ability Score Bonuses
|
|
||||||
SetCompositeBonus(oSkin, "Template_Saint_con", 2, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_CON);
|
SetCompositeBonus(oSkin, "Template_Saint_con", 2, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_CON);
|
||||||
SetCompositeBonus(oSkin, "Template_Saint_int", 2, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_INT);
|
SetCompositeBonus(oSkin, "Template_Saint_int", 2, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_INT);
|
||||||
SetCompositeBonus(oSkin, "Template_Saint_wis", 2, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_WIS);
|
SetCompositeBonus(oSkin, "Template_Saint_wis", 2, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_WIS);
|
||||||
SetCompositeBonus(oSkin, "Template_Saint_cha", 4, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_CHA);
|
SetCompositeBonus(oSkin, "Template_Saint_cha", 4, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_CHA);
|
||||||
|
|
||||||
|
//:: Setup Spell-like abilities & Holy Power marker feat
|
||||||
//:: Setup Spell-like abilities & Holy Power marker feat
|
|
||||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_TEMPLATE_SAINT_SLA_BLESS);
|
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_TEMPLATE_SAINT_SLA_BLESS);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
@ -204,7 +204,7 @@ void main()
|
|||||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_TEMPLATE_SAINT_HOLY_POWER);
|
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_TEMPLATE_SAINT_HOLY_POWER);
|
||||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||||
|
|
||||||
//:: Setup Holy Touch anti-evil damage shield.
|
//:: Setup Holy Touch anti-evil damage shield.
|
||||||
itemproperty iHolyTouch = (ItemPropertyOnHitCastSpell(IP_CONST_ONHIT_CASTSPELL_ONHIT_UNIQUEPOWER, 1));
|
itemproperty iHolyTouch = (ItemPropertyOnHitCastSpell(IP_CONST_ONHIT_CASTSPELL_ONHIT_UNIQUEPOWER, 1));
|
||||||
object oArmor = GetItemInSlot(INVENTORY_SLOT_CHEST, oPC);
|
object oArmor = GetItemInSlot(INVENTORY_SLOT_CHEST, oPC);
|
||||||
if (GetIsObjectValid(oArmor))
|
if (GetIsObjectValid(oArmor))
|
||||||
@ -214,15 +214,13 @@ void main()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//ebonfowl: strange that it compiled with this object redefined here
|
|
||||||
//object oSkin = GetPCSkin(oPC);
|
|
||||||
IPSafeAddItemProperty(oSkin, iHolyTouch, 0.0f, X2_IP_ADDPROP_POLICY_REPLACE_EXISTING, FALSE, FALSE);
|
IPSafeAddItemProperty(oSkin, iHolyTouch, 0.0f, X2_IP_ADDPROP_POLICY_REPLACE_EXISTING, FALSE, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
//:: Keep property on armor or hide
|
//:: Keep property on armor or hide
|
||||||
ExecuteScript ("prc_keep_onhit_a", oPC);
|
ExecuteScript ("prc_keep_onhit_a", oPC);
|
||||||
|
|
||||||
//:: Setup Holy Touch extra damage vs evil
|
//:: Setup Holy Touch extra damage vs evil
|
||||||
object oItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
|
object oItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
|
||||||
|
|
||||||
effect eEffect1 = VersusAlignmentEffect(EffectDamageIncrease(7, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
|
effect eEffect1 = VersusAlignmentEffect(EffectDamageIncrease(7, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
|
||||||
@ -250,19 +248,20 @@ void main()
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//ebonfowl: this needed to be moved outside the while loop
|
//ebonfowl: this needed to be moved outside the while loop
|
||||||
//:: check if equipped with a ranged weapon and apply effect again if not
|
//:: check if equipped with a ranged weapon and apply effect again if not
|
||||||
if (!GetWeaponRanged(oItem))
|
if (!GetWeaponRanged(oItem))
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oPC);
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oPC);
|
||||||
|
|
||||||
|
|
||||||
//:: Hook in the events for Holy Touch
|
//:: Hook in the events for Holy Touch
|
||||||
if(DEBUG) DoDebug("tmp_m_saint: Adding eventhooks");
|
if(DEBUG) DoDebug("tmp_m_saint: Adding eventhooks");
|
||||||
//AddEventScript(oPC, EVENT_ONPLAYEREQUIPITEM, "tmp_m_saint", TRUE, FALSE);
|
//AddEventScript(oPC, EVENT_ONPLAYEREQUIPITEM, "tmp_m_saint", TRUE, FALSE);
|
||||||
//AddEventScript(oPC, EVENT_ONPLAYERUNEQUIPITEM, "tmp_m_saint", TRUE, FALSE);
|
//AddEventScript(oPC, EVENT_ONPLAYERUNEQUIPITEM, "tmp_m_saint", TRUE, FALSE);
|
||||||
AddEventScript(oPC, EVENT_ONHIT, "tmp_m_saint", TRUE, FALSE);
|
AddEventScript(oPC, EVENT_ONHIT, "tmp_m_saint", TRUE, FALSE);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//:: We're being called from the OnHit eventhook
|
//:: We're being called from the OnHit eventhook
|
||||||
else if(nEvent == EVENT_ONHIT)
|
else if(nEvent == EVENT_ONHIT)
|
||||||
@ -299,86 +298,4 @@ void main()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
//:: END IF - Running OnHit event
|
//:: END IF - Running OnHit event
|
||||||
|
|
||||||
//:: We are called from the OnPlayerEquipItem eventhook. Add OnHitCast: Unique Power to oPC's weapon
|
|
||||||
/* else if(nEvent == EVENT_ONPLAYEREQUIPITEM)
|
|
||||||
{
|
|
||||||
oPC = GetItemLastEquippedBy();
|
|
||||||
oItem = GetItemLastEquipped();
|
|
||||||
if(DEBUG) DoDebug("tmp_m_gravetouch - OnEquip\n"
|
|
||||||
+ "oPC = " + DebugObject2Str(oPC) + "\n"
|
|
||||||
+ "oItem = " + DebugObject2Str(oItem) + "\n"
|
|
||||||
);
|
|
||||||
|
|
||||||
object oWeapon = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
|
|
||||||
|
|
||||||
effect eEffect1 = VersusAlignmentEffect(EffectDamageIncrease(7, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
|
|
||||||
effect eEffect2 = VersusAlignmentEffect(EffectDamageIncrease(DAMAGE_BONUS_2, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
|
|
||||||
eEffect2 = VersusRacialTypeEffect(eEffect2, RACIAL_TYPE_OUTSIDER);
|
|
||||||
effect eEffect3 = VersusAlignmentEffect(EffectDamageIncrease(DAMAGE_BONUS_2, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
|
|
||||||
eEffect3 = VersusRacialTypeEffect(eEffect3, RACIAL_TYPE_UNDEAD);
|
|
||||||
effect eLink = EffectLinkEffects(eEffect1, eEffect2);
|
|
||||||
eLink = EffectLinkEffects(eLink, eEffect3);
|
|
||||||
eLink = SupernaturalEffect(eLink);
|
|
||||||
eLink = TagEffect(eLink, "EffectHolyTouch");
|
|
||||||
|
|
||||||
//:: Clear the effect to be safe and prevent stacking
|
|
||||||
effect eCheckEffect = GetFirstEffect(oPC);
|
|
||||||
|
|
||||||
while (GetIsEffectValid(eCheckEffect))
|
|
||||||
{
|
|
||||||
if (GetEffectTag(eCheckEffect) == "EffectHolyTouch")
|
|
||||||
{
|
|
||||||
RemoveEffect(oPC, eCheckEffect);
|
|
||||||
}
|
|
||||||
eCheckEffect = GetNextEffect(oPC);
|
|
||||||
}
|
|
||||||
|
|
||||||
//:: Check if equipped with a ranged weapon and apply effect again if not
|
|
||||||
if (!GetWeaponRanged(oWeapon))
|
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oPC);
|
|
||||||
|
|
||||||
}
|
|
||||||
//:: END IF - Running OnPlayerEquipItem event */
|
|
||||||
|
|
||||||
//:: We are called from the OnPlayerUnEquipItem eventhook. Remove OnHitCast: Unique Power from oPC's weapon
|
|
||||||
/* else if(nEvent == EVENT_ONPLAYERUNEQUIPITEM)
|
|
||||||
{
|
|
||||||
oPC = GetItemLastUnequippedBy();
|
|
||||||
oItem = GetItemLastUnequipped();
|
|
||||||
if(DEBUG) DoDebug("tmp_m_gravetouch - OnUnEquip\n"
|
|
||||||
+ "oPC = " + DebugObject2Str(oPC) + "\n"
|
|
||||||
+ "oItem = " + DebugObject2Str(oItem) + "\n"
|
|
||||||
);
|
|
||||||
|
|
||||||
object oWeapon = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
|
|
||||||
|
|
||||||
effect eEffect1 = VersusAlignmentEffect(EffectDamageIncrease(7, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
|
|
||||||
effect eEffect2 = VersusAlignmentEffect(EffectDamageIncrease(DAMAGE_BONUS_2, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
|
|
||||||
eEffect2 = VersusRacialTypeEffect(eEffect2, RACIAL_TYPE_OUTSIDER);
|
|
||||||
effect eEffect3 = VersusAlignmentEffect(EffectDamageIncrease(DAMAGE_BONUS_2, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
|
|
||||||
eEffect3 = VersusRacialTypeEffect(eEffect3, RACIAL_TYPE_UNDEAD);
|
|
||||||
effect eLink = EffectLinkEffects(eEffect1, eEffect2);
|
|
||||||
eLink = EffectLinkEffects(eLink, eEffect3);
|
|
||||||
eLink = SupernaturalEffect(eLink);
|
|
||||||
eLink = TagEffect(eLink, "EffectHolyTouch");
|
|
||||||
|
|
||||||
//:: Clear the effect to be safe and prevent stacking
|
|
||||||
effect eCheckEffect = GetFirstEffect(oPC);
|
|
||||||
|
|
||||||
while (GetIsEffectValid(eCheckEffect))
|
|
||||||
{
|
|
||||||
if (GetEffectTag(eCheckEffect) == "EffectHolyTouch")
|
|
||||||
{
|
|
||||||
RemoveEffect(oPC, eCheckEffect);
|
|
||||||
}
|
|
||||||
eCheckEffect = GetNextEffect(oPC);
|
|
||||||
}
|
|
||||||
|
|
||||||
//:: Check if equipped with a ranged weapon and apply effect again if not
|
|
||||||
if (!GetWeaponRanged(oWeapon))
|
|
||||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oPC);
|
|
||||||
}
|
|
||||||
//:: END IF - Running OnPlayerUnEquipItem event */
|
|
||||||
|
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user