/*
 * Plik  : skinterwencja.h
 * Autor : Torg
 * Opis  : Czar, ktory na 60 sekund daje:
 *         Sila         + 80
 *         Zrecznosc    + 100
 *         Wytrzymalosc + 120
 *         Odwaga       + 150
 *         Uniki        + 40
 *         Jesli nie wyjdzie to rzucajacy ponosi POWAZNE konsekwencje
 *
 * Data  : 20 sierpnia 2002
 *
 * Copyright (C)
 *
 */

#include "defs.h"
#include "czary.h"

int
skinterwencja()
{
    int kosc;
    object paraliz;

    if (TP->query_mana() < 500)
    {
        write("Twe sily mentalne sa na wyczerpaniu.\n");
        return 1;
    }
    if (mozna_rzucac2 == 0)
    {
        write("Nie czujesz wystarczajacego kontaktu z Solkanem.\n");
        return 1;
    }

    kosc = random(100);

    set_alarm(300.0, 0.0, "think2");
    mozna_rzucac2=0;

    if (TP->Q1 <= 60)
    {
        write("Przy znajomosci swych umiejetnosci poslugiwania sie "
            + "biala magia nie odwazysz sie na rzucenie tego czaru.\n");
        return 1;
    }

    if (kosc > 25 && kosc <= 60)
    {
        write("Skladasz dlonie i pograzasz sie w modlitwie, jednak "
            + "wymawiasz slowa za szybko, po czym przez cale cialo "
            + "przechodzi cie dreszcz.\n");
        tell_room(E(TP), QCIMIE(TP,PL_MIA) + " sklada dlonie i szybko "
            + "choc cicho, wymawia jakies slowa. Przez chwile je"
            + TP->koncowka("go", "j") + " cialo drga w lekkiej agonii.\n");
        eat_mana(100);
        TP->heal_hp(-200);
        return 1;
    }

    if (kosc > 60 && kosc <= 95)
    {
        write("Skladasz rece do modlitwy, lecz w pospiechu zapominasz "
            + "wypowiedziec imienia Solkana. Z niebios dochodzi grzmot, "
            + "po chwili zmieniajacy sie w blyskawice, ktora uderza "
            + "tuz przed toba powaznie cie raniac.\n");
        tell_room(E(TP),QCIMIE(TP,PL_MIA) + " sklada rece i zaczyna "
            + "sie zarliwie modlic, jednak cos musial"
            + TP->koncowka("", "a") + " zrobic nie tak, gdyz z niebios "
            + "dochodzi przerazliwy grzmot. Zaslaniasz glowe rekami, "
            + "a po chwili przed " + QIMIE(TP,PL_MIE) + " uderza "
            + "blekitny piorun ciezko " + TP->koncowka("go", "ja")
            + "raniac.\n");
        eat_mana(250);
        TP->heal_hp(-600);
        return 1;
    }

    if (kosc > 95)
    {
        write("Nagle unosisz sie w powietrzu, a w glowie slyszysz "
            + "glos: Nie jestes god" + TP->koncowka("dzien", "dna")
            + ", jednak daruje Ci zycie...\nPadasz na kolana "
            + "czujac jak nieznana sila wysysa z twego ciala "
            + "wszystkie sily mentalne. Pod toba pojawia sie rowniez "
            + "kaluza krwi... twojej krwi.\n");
        tell_room(E(TP),"Nagle jakas nadludzka sila unosi "
            + QIMIE(TP,PL_BIE) + " nad ziemie, po czym ciska nim "
            + "o podloze. " + QCIMIE(TP,PL_MIA) + " podnosi sie "
            + "na kolana, podczas gdy z jego ciala, w kierunku "
            + "niebios wyplywa fioletowa smuga, a pod "
            + TP->koncowka("nim samym", "nia sama") + " pojawia sie "
            + "kaluza krwi.\n");
        setuid();
        seteuid(getuid());
        TP->set_mana(1);
        TP->set_hp(50);
        paraliz=clone_object("obj/paraliz.c");
        paraliz->move(TP);
        TP->set_fatigue(1);
        TP->add_stun();

        set_alarm(30.0, 0.0, "apar", TP);
        return 1;
    }

    write("Wymawiasz slowa modlitwy, a ziemia zaczyna drzec.\n");
    tell_room(E(TP),QCIMIE(TP,PL_MIA)+" mruczy niezrozumiale "
            + "slowa, a ziemia dookola zaczyna drzec.\n");
    set_alarm(4.0, 0.0, "interwencja");
    return 1;
}

int
interwencja()
{
    write("Z niebios slyszysz glos: " + QCIMIE(TP,PL_MIA) + "! "
        + "Okazales sie " + TP->koncowka("godzien", "godna") + " "
        + "aby Ma sila cie natchnac. Uzyj jej dobrze!\n"
        + "Twe cialo zaczyna rosnac, a ty czujesz w sobie wielka "
        + "sile.\n");
    tell_room(E(TP),QCIMIE(TP,PL_MIA) + " rozrzuca rece "
        + "na boki i z glosnym krzykiem zaczyna rosnac w oczach. "
        + "Po chwili z je" + TP->koncowka("go", "j") + " oczu bije "
        + "fanatyczny blask.\n");
    TP->set_stat_extra(0,80);
    TP->set_stat_extra(1,100);
    TP->set_stat_extra(2,120);
    TP->set_stat_extra(5,150);
    TP->set_skill_extra(24,40);
    TP->heal_hp(10000);
    eat_mana(500);
    set_alarm(60.0, 0.0, "koniec_interwencji");
    return 1;
}

int
koniec_interwencji()
{
    write("\n\nNagle czujesz jak z twego ciala ulatuje duch Solkana. "
        + "Wszystko cichnie a ty czujesz tylko tesknote za Bogiem.\n");
    tell_room(E(TP), QCIMIE(TP,PL_MIA) + " nagle odrzuca glowe do tylu, "
        + "prostuje sie, a na twarzy wykwita mu tesknota.\n");
    TP->set_stat_extra(0,0);
    TP->set_stat_extra(1,0);
    TP->set_stat_extra(2,0);
    TP->set_stat_extra(5,0);
    TP->set_skill_extra(24,0);
    return 1;
}
