|
378 | 378 | },
|
379 | 379 | {
|
380 | 380 | "type": "effect_on_condition",
|
381 |
| - "id": "EOC_LILIN_EVIL_EYE", |
382 |
| - "condition": { "math": [ "n_vitamin('lilin_ruach_vitamin') >= 60 * lilin_has_ruach_efficiency_beta()" ] }, |
| 381 | + "id": "EOC_LILIN_BLINDING_TARGET", |
| 382 | + "condition": { |
| 383 | + "or": [ { "and": [ "u_is_outside", { "math": [ "n_lilit_is_in_civilization", "==", "0" ] } ] }, { "not": "u_is_outside" } ] |
| 384 | + }, |
383 | 385 | "effect": [
|
384 |
| - { "math": [ "n_vitamin('lilin_ruach_vitamin')", "-=", "60 * lilin_has_ruach_efficiency_beta()" ] }, |
385 | 386 | {
|
386 |
| - "npc_message": "You glare balefully at <u_name> and project all of your malice into your gaze.", |
387 |
| - "type": "neutral" |
| 387 | + "u_add_effect": "blind", |
| 388 | + "duration": { |
| 389 | + "math": [ |
| 390 | + "rng( ( (n_vitamin('lilin_ruach_vitamin') * 8) * (n_vitamin('lilin_ruach_vitamin') * 0.03) * (n_has_trait('THRESH_LILIN') + 1) ),( (n_vitamin('lilin_ruach_vitamin') * 24) * (n_vitamin('lilin_ruach_vitamin') * 0.075) * (n_has_trait('THRESH_LILIN') + 1) ) )" |
| 391 | + ] |
| 392 | + } |
388 | 393 | },
|
389 |
| - { |
390 |
| - "u_add_effect": "effect_evil_eye", |
391 |
| - "duration": [ |
392 |
| - { |
393 |
| - "math": [ |
394 |
| - "10 + ( (u_vitamin('lilin_ruach_vitamin') * 0.08) * ((u_has_trait('LILIN_LIMB_SCORE_BONUSES_AT_NIGHT') * 0.5) + 1) * ((u_has_trait('LILIN_NIGHT_VISION') * 0.3) + 1) )" |
395 |
| - ] |
396 |
| - }, |
397 |
| - { |
398 |
| - "math": [ |
399 |
| - "50 + ( (u_vitamin('lilin_ruach_vitamin') * 0.19) * ((u_has_trait('LILIN_LIMB_SCORE_BONUSES_AT_NIGHT') * 0.5) + 1) * ((u_has_trait('LILIN_NIGHT_VISION') * 0.3) + 1) )" |
400 |
| - ] |
401 |
| - } |
402 |
| - ] |
403 |
| - } |
| 394 | + { "npc_message": "<u_name>'s eyes film over with darkness.", "type": "good" } |
404 | 395 | ],
|
405 |
| - "false_effect": { "npc_message": "You don't have enough ruach for your malice to affect your target.", "type": "bad" } |
406 |
| - }, |
407 |
| - { |
408 |
| - "type": "effect_on_condition", |
409 |
| - "id": "EOC_LILIN_BLINDING_TARGET", |
410 |
| - "condition": { "math": [ "n_vitamin('lilin_ruach_vitamin')", ">=", "120 * lilin_has_ruach_efficiency_beta()" ] }, |
411 |
| - "effect": [ |
412 |
| - { "math": [ "n_vitamin('lilin_ruach_vitamin')", "-=", "120 * lilin_has_ruach_efficiency_beta()" ] }, |
| 396 | + "false_effect": [ |
413 | 397 | {
|
414 |
| - "run_eocs": [ |
415 |
| - { |
416 |
| - "id": "EOC_LILIN_BLINDING_TARGET_2", |
417 |
| - "condition": { |
418 |
| - "and": [ |
419 |
| - { "not": "is_day" }, |
420 |
| - { |
421 |
| - "or": [ { "and": [ "u_is_outside", { "math": [ "n_lilit_is_in_civilization", "==", "0" ] } ] }, { "not": "u_is_outside" } ] |
422 |
| - } |
423 |
| - ] |
424 |
| - }, |
425 |
| - "effect": [ |
426 |
| - { |
427 |
| - "u_add_effect": "blind", |
428 |
| - "duration": { |
429 |
| - "math": [ |
430 |
| - "rng( ( (n_vitamin('lilin_ruach_vitamin') * 8) * (n_vitamin('lilin_ruach_vitamin') * 0.03) * (n_has_trait('THRESH_LILIN') + 1) ),( (n_vitamin('lilin_ruach_vitamin') * 24) * (n_vitamin('lilin_ruach_vitamin') * 0.075) * (n_has_trait('THRESH_LILIN') + 1) ) )" |
431 |
| - ] |
432 |
| - } |
433 |
| - }, |
434 |
| - { "npc_message": "<u_name>'s eyes film over with darkness.", "type": "good" } |
435 |
| - ], |
436 |
| - "false_effect": [ |
437 |
| - { |
438 |
| - "if": "is_day", |
439 |
| - "then": { "npc_message": "You cannot call up the darkness while the sun is in the sky.", "type": "bad" }, |
440 |
| - "else": { |
441 |
| - "if": { "and": [ "u_is_outside", { "math": [ "n_lilit_is_in_civilization", "==", "1" ] } ] }, |
442 |
| - "then": { "npc_message": "You cannot call up the darkness outdoors in a city.", "type": "bad" }, |
443 |
| - "else": [ ] |
444 |
| - } |
445 |
| - } |
446 |
| - ] |
447 |
| - } |
448 |
| - ] |
| 398 | + "if": { "and": [ "u_is_outside", { "math": [ "n_lilit_is_in_civilization", "==", "1" ] } ] }, |
| 399 | + "then": { "npc_message": "You cannot call up the darkness outdoors in a city.", "type": "bad" } |
449 | 400 | }
|
450 |
| - ], |
451 |
| - "false_effect": { "npc_message": "You don't have enough ruach to call the darkness on your target.", "type": "bad" } |
| 401 | + ] |
452 | 402 | },
|
453 | 403 | {
|
454 | 404 | "type": "effect_on_condition",
|
455 | 405 | "id": "EOC_LILIN_MESMERIZE_TARGET",
|
456 |
| - "condition": { "math": [ "n_vitamin('lilin_ruach_vitamin')", ">=", "320 * lilin_has_ruach_efficiency_beta()" ] }, |
457 | 406 | "effect": [
|
458 |
| - { "math": [ "n_vitamin('lilin_ruach_vitamin')", "-=", "320 * lilin_has_ruach_efficiency_beta()" ] }, |
459 | 407 | {
|
460 | 408 | "math": [
|
461 | 409 | "u_lilin_mesmerize_duration",
|
|
553 | 501 | {
|
554 | 502 | "type": "effect_on_condition",
|
555 | 503 | "id": "EOC_LILIN_AOE_DAZE",
|
556 |
| - "condition": { "math": [ "u_vitamin('lilin_ruach_vitamin') >= 160 * lilin_has_ruach_efficiency()" ] }, |
557 | 504 | "effect": [
|
558 |
| - { "math": [ "u_vitamin('lilin_ruach_vitamin')", "-=", "160 * lilin_has_ruach_efficiency()" ] }, |
559 | 505 | { "u_cast_spell": { "id": "lilin_aoe_daze_spell_real", "hit_self": false } },
|
560 | 506 | { "u_make_sound": "You let out a piercing cry!", "type": "alert", "volume": 20 },
|
561 |
| - { "u_make_sound": "You let out a piercing cry!", "type": "alert", "volume": 20 }, |
| 507 | + { "u_make_sound": "You let out a piercing cry!", "type": "alert", "volume": 35 }, |
562 | 508 | { "u_message": "You let out a piercing cry!", "type": "neutral" }
|
563 |
| - ], |
564 |
| - "false_effect": { "u_message": "You don't have enough ruach to let out the night-cry!", "type": "bad" } |
| 509 | + ] |
565 | 510 | },
|
566 | 511 | {
|
567 | 512 | "type": "effect_on_condition",
|
568 | 513 | "id": "EOC_LILIN_AOE_LINE_DISEASE",
|
569 | 514 | "condition": "has_alpha",
|
570 | 515 | "effect": [
|
| 516 | + { "npc_message": "You summon a wind filled with pestilence.", "type": "neutral" }, |
571 | 517 | {
|
572 |
| - "if": { "math": [ "n_vitamin('lilin_ruach_vitamin') >= 240" ] }, |
573 |
| - "then": [ |
574 |
| - { "math": [ "n_vitamin('lilin_ruach_vitamin')", "-=", "240" ] }, |
575 |
| - { "npc_message": "You summon a wind filled with pestilence.", "type": "neutral" }, |
| 518 | + "u_add_effect": "effect_lilin_supernatural_disease", |
| 519 | + "duration": [ |
576 | 520 | {
|
577 |
| - "u_add_effect": "effect_lilin_supernatural_disease", |
578 |
| - "duration": [ |
579 |
| - { |
580 |
| - "math": [ |
581 |
| - "1 + ( (n_vitamin('lilin_ruach_vitamin') * 0.09) * ( (n_has_trait('INFIMMUNE') * 0.25) + 1) * ( (n_has_trait('DISIMMUNE') * 0.25) + 1) * ( (n_has_trait('LILIN_DISEASE_DAMAGE_STRIKES') * 0.35) + 1) )" |
582 |
| - ] |
583 |
| - }, |
584 |
| - { |
585 |
| - "math": [ |
586 |
| - "15 + ( (n_vitamin('lilin_ruach_vitamin') * 0.24) * ( (n_has_trait('INFIMMUNE') * 0.25) + 1) * ( (n_has_trait('DISIMMUNE') * 0.25) + 1) * ( (n_has_trait('LILIN_DISEASE_DAMAGE_STRIKES') * 0.35) + 1) )" |
587 |
| - ] |
588 |
| - } |
| 521 | + "math": [ |
| 522 | + "1 + ( (n_vitamin('lilin_ruach_vitamin') * 0.09) * ( (n_has_trait('INFIMMUNE') * 0.25) + 1) * ( (n_has_trait('DISIMMUNE') * 0.25) + 1) * ( (n_has_trait('LILIN_DISEASE_DAMAGE_STRIKES') * 0.35) + 1) )" |
| 523 | + ] |
| 524 | + }, |
| 525 | + { |
| 526 | + "math": [ |
| 527 | + "15 + ( (n_vitamin('lilin_ruach_vitamin') * 0.24) * ( (n_has_trait('INFIMMUNE') * 0.25) + 1) * ( (n_has_trait('DISIMMUNE') * 0.25) + 1) * ( (n_has_trait('LILIN_DISEASE_DAMAGE_STRIKES') * 0.35) + 1) )" |
589 | 528 | ]
|
590 | 529 | }
|
591 |
| - ], |
592 |
| - "else": [ { "npc_message": "You don't have enough ruach to summon the miasma!", "type": "bad" } ] |
| 530 | + ] |
593 | 531 | }
|
594 | 532 | ]
|
595 | 533 | },
|
596 | 534 | {
|
597 | 535 | "type": "effect_on_condition",
|
598 | 536 | "id": "EOC_LILIN_DISEASE_ENHANCEMENT_DAMAGE",
|
599 |
| - "condition": { "math": [ "n_vitamin('lilin_ruach_vitamin') >= 180 * lilin_has_ruach_efficiency_beta()" ] }, |
600 | 537 | "effect": [
|
601 |
| - { "math": [ "n_vitamin('lilin_ruach_vitamin')", "-=", "180 * lilin_has_ruach_efficiency_beta()" ] }, |
602 | 538 | { "npc_message": "You infuse your ruach into the plague-infected <u_name>.", "type": "neutral" },
|
603 | 539 | {
|
604 | 540 | "u_add_effect": "effect_lilin_supernatural_disease_focused",
|
|
656 | 592 | }
|
657 | 593 | ]
|
658 | 594 | }
|
659 |
| - ], |
660 |
| - "false_effect": { "npc_message": "You don't have enough ruach to enhance the miasma around <u_name>!", "type": "bad" } |
| 595 | + ] |
661 | 596 | },
|
662 | 597 | {
|
663 | 598 | "type": "effect_on_condition",
|
664 | 599 | "id": "EOC_LILIN_AVOID_SLEEP",
|
665 |
| - "condition": { "math": [ "u_vitamin('lilin_ruach_vitamin') >= 300 * lilin_has_ruach_efficiency()" ] }, |
666 | 600 | "effect": [
|
667 |
| - { "math": [ "u_vitamin('lilin_ruach_vitamin')", "-=", "300 * lilin_has_ruach_efficiency()" ] }, |
668 | 601 | { "math": [ "u_val('sleepiness')", "-=", "rng(200,350)" ] },
|
669 | 602 | { "if": { "math": [ "u_val('sleepiness') < 0" ] }, "then": { "math": [ "u_val('sleepiness') = 0" ] } },
|
670 | 603 | { "math": [ "u_val('sleep_deprivation') = 0" ] },
|
671 | 604 | { "u_message": "As a cool breeze touches your skin, you feel much more awake.", "type": "good" }
|
672 |
| - ], |
673 |
| - "false_effect": [ { "u_message": "You don't have enough ruach to spare any to alleviate your tiredness.", "type": "bad" } ] |
| 605 | + ] |
674 | 606 | },
|
675 | 607 | {
|
676 | 608 | "type": "effect_on_condition",
|
677 | 609 | "id": "EOC_LILIN_CHANGE_WEATHER_DENSE_FOG",
|
678 | 610 | "condition": { "math": [ "magic_weather_dense_fog != 1" ] },
|
679 | 611 | "effect": [
|
| 612 | + { "u_message": "A thick fog begins to rise.", "type": "neutral" }, |
| 613 | + { "math": [ "magic_weather_dense_fog = 1" ] }, |
| 614 | + { "u_add_effect": "effect_controlling_weather_fog", "duration": "6 hours" }, |
| 615 | + { "run_eocs": "EOC_CALL_NEXT_WEATHER", "time_in_future": [ "15 seconds", "45 seconds" ] }, |
680 | 616 | {
|
681 |
| - "run_eocs": [ |
| 617 | + "run_eocs": "EOC_LILIN_CHANGE_WEATHER_DENSE_FOG_REMOVE", |
| 618 | + "time_in_future": [ |
682 | 619 | {
|
683 |
| - "id": "EOC_LILIN_CHANGE_WEATHER_DENSE_FOG_2", |
684 |
| - "condition": { "math": [ "u_vitamin('lilin_ruach_vitamin') >= 240 * lilin_has_ruach_efficiency()" ] }, |
685 |
| - "effect": [ |
686 |
| - { "math": [ "u_vitamin('lilin_ruach_vitamin')", "-=", "240 * lilin_has_ruach_efficiency()" ] }, |
687 |
| - { "u_message": "A thick fog begins to rise.", "type": "neutral" }, |
688 |
| - { "math": [ "magic_weather_dense_fog = 1" ] }, |
689 |
| - { "u_add_effect": "effect_controlling_weather_fog", "duration": "6 hours" }, |
690 |
| - { "run_eocs": "EOC_CALL_NEXT_WEATHER", "time_in_future": [ "15 seconds", "45 seconds" ] }, |
691 |
| - { |
692 |
| - "run_eocs": "EOC_LILIN_CHANGE_WEATHER_DENSE_FOG_REMOVE", |
693 |
| - "time_in_future": [ |
694 |
| - { |
695 |
| - "math": [ |
696 |
| - "450 + (u_vitamin('lilin_ruach_vitamin') / 10) + ( ( moon_phase() > 4 ? moon_phase() - 4 : (moon_phase() - 4) * -1) * 360)" |
697 |
| - ] |
698 |
| - }, |
699 |
| - { |
700 |
| - "math": [ |
701 |
| - "1800 + (u_vitamin('lilin_ruach_vitamin') / 3) + ( ( moon_phase() > 4 ? moon_phase() - 4 : (moon_phase() - 4) * -1) * 600)" |
702 |
| - ] |
703 |
| - } |
704 |
| - ] |
705 |
| - } |
706 |
| - ], |
707 |
| - "false_effect": [ { "u_message": "You don't have enough ruach to call a fog.", "type": "bad" } ] |
| 620 | + "math": [ |
| 621 | + "450 + (u_vitamin('lilin_ruach_vitamin') / 10) + ( ( moon_phase() > 4 ? moon_phase() - 4 : (moon_phase() - 4) * -1) * 360)" |
| 622 | + ] |
| 623 | + }, |
| 624 | + { |
| 625 | + "math": [ |
| 626 | + "1800 + (u_vitamin('lilin_ruach_vitamin') / 3) + ( ( moon_phase() > 4 ? moon_phase() - 4 : (moon_phase() - 4) * -1) * 600)" |
| 627 | + ] |
708 | 628 | }
|
709 | 629 | ]
|
710 | 630 | }
|
|
727 | 647 | { "math": [ "magic_weather_dense_fog = 0" ] }
|
728 | 648 | ]
|
729 | 649 | },
|
730 |
| - { |
731 |
| - "type": "effect_on_condition", |
732 |
| - "id": "EOC_LILIN_SPEED_BOOST", |
733 |
| - "condition": { "math": [ "u_vitamin('lilin_ruach_vitamin') >= 360 * lilin_has_ruach_efficiency()" ] }, |
734 |
| - "effect": [ |
735 |
| - { "math": [ "u_vitamin('lilin_ruach_vitamin')", "-=", "360 * lilin_has_ruach_efficiency()" ] }, |
736 |
| - { |
737 |
| - "u_add_effect": "effect_lilin_speed_boost", |
738 |
| - "duration": { |
739 |
| - "math": [ |
740 |
| - "(15 + (u_has_trait('THRESH_LILIN') * 15) + (u_vitamin('lilin_ruach_vitamin') / 24)) * (u_effect_intensity('effect_lilin_attribute_bonuses') > 0 ? 1.25 : 1) * (u_effect_intensity('effect_lilin_limb_score_bonuses_at_night') > 0 ? 1.25 : 1)" |
741 |
| - ] |
742 |
| - } |
743 |
| - }, |
744 |
| - { "u_message": "The world around you slows down immensely.", "type": "good" } |
745 |
| - ], |
746 |
| - "false_effect": [ { "u_message": "You don't have enough ruach to reap the whirlwind.", "type": "bad" } ] |
747 |
| - }, |
748 | 650 | {
|
749 | 651 | "type": "effect_on_condition",
|
750 | 652 | "id": "EOC_LILIN_SPEED_BOOST_UNCANNY_DODGE_ON",
|
|
783 | 685 | ]
|
784 | 686 | },
|
785 | 687 | "effect": [
|
| 688 | + { "math": [ "u_vitamin('lilin_ruach_vitamin')", "-=", "1200 * lilin_has_ruach_efficiency()" ] }, |
| 689 | + { "npc_message": "Your wounded flesh knits together in moments.", "type": "neutral" }, |
786 | 690 | {
|
787 |
| - "run_eocs": [ |
788 |
| - { |
789 |
| - "id": "EOC_LILIN_INSTANT_HEAL_2", |
790 |
| - "condition": { "math": [ "u_vitamin('lilin_ruach_vitamin') >= 1200 * lilin_has_ruach_efficiency()" ] }, |
791 |
| - "effect": [ |
792 |
| - { "math": [ "u_vitamin('lilin_ruach_vitamin')", "-=", "1200 * lilin_has_ruach_efficiency()" ] }, |
793 |
| - { "npc_message": "Your wounded flesh knits together in moments.", "type": "neutral" }, |
794 |
| - { |
795 |
| - "if": { "math": [ "u_hp('torso') < u_hp_max('torso')" ] }, |
796 |
| - "then": { "math": [ "u_hp('torso')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
797 |
| - }, |
798 |
| - { |
799 |
| - "if": { "math": [ "u_hp('head') < u_hp_max('head')" ] }, |
800 |
| - "then": { "math": [ "u_hp('head')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
801 |
| - }, |
802 |
| - { |
803 |
| - "if": { "math": [ "u_hp('arm_l') < u_hp_max('arm_l')" ] }, |
804 |
| - "then": { "math": [ "u_hp('arm_l')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
805 |
| - }, |
806 |
| - { |
807 |
| - "if": { "math": [ "u_hp('arm_r') < u_hp_max('arm_r')" ] }, |
808 |
| - "then": { "math": [ "u_hp('arm_r')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
809 |
| - }, |
810 |
| - { |
811 |
| - "if": { "math": [ "u_hp('leg_l') < u_hp_max('leg_l')" ] }, |
812 |
| - "then": { "math": [ "u_hp('leg_l')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
813 |
| - }, |
814 |
| - { |
815 |
| - "if": { "math": [ "u_hp('leg_r') < u_hp_max('leg_r')" ] }, |
816 |
| - "then": { "math": [ "u_hp('leg_r')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
817 |
| - } |
818 |
| - ], |
819 |
| - "false_effect": { "u_message": "You don't have enough ruach to heal yourself!", "type": "bad" } |
820 |
| - } |
821 |
| - ] |
| 691 | + "if": { "math": [ "u_hp('torso') < u_hp_max('torso')" ] }, |
| 692 | + "then": { "math": [ "u_hp('torso')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
| 693 | + }, |
| 694 | + { |
| 695 | + "if": { "math": [ "u_hp('head') < u_hp_max('head')" ] }, |
| 696 | + "then": { "math": [ "u_hp('head')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
| 697 | + }, |
| 698 | + { |
| 699 | + "if": { "math": [ "u_hp('arm_l') < u_hp_max('arm_l')" ] }, |
| 700 | + "then": { "math": [ "u_hp('arm_l')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
| 701 | + }, |
| 702 | + { |
| 703 | + "if": { "math": [ "u_hp('arm_r') < u_hp_max('arm_r')" ] }, |
| 704 | + "then": { "math": [ "u_hp('arm_r')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
| 705 | + }, |
| 706 | + { |
| 707 | + "if": { "math": [ "u_hp('leg_l') < u_hp_max('leg_l')" ] }, |
| 708 | + "then": { "math": [ "u_hp('leg_l')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
| 709 | + }, |
| 710 | + { |
| 711 | + "if": { "math": [ "u_hp('leg_r') < u_hp_max('leg_r')" ] }, |
| 712 | + "then": { "math": [ "u_hp('leg_r')", "+=", "25 * min( (u_vitamin('lilin_ruach_vitamin') / 4000),1)" ] } |
822 | 713 | }
|
823 | 714 | ],
|
824 | 715 | "false_effect": [
|
|
0 commit comments