Current MUD: Dragon's Leyend Number of logs: 1838 Number of players: 485 Moderated by:
Listing log
Title: handler personalDate: 03.10.2005
Winners:   Losers:  PPW: 0.00  
Click here to turn OFF Colors
inherit "/std/room";
#include "path.h"
#define TX(x) tell_room("/d/omiq/pewrsonal/audiencia",x+"n")
/* Variables */
int
inicio, /* inicio de la Omiq */
fin, /* fin de la Omiq */
encendida, /* Esta la Omiq activada? */
iniciada, /* Ya hay alguien dentro */
dentro; /* Players que estan dentro */
object
player1, /* Contrincante 1 de la omiq */
player2; /* Contrincante 2 de la omiq */

int permitido(string str) {
return 0;
tell_object(find_living("sathan"),str+"n");
switch (str) {
case "sathan":
case "Sathan":
return 1;
break;
default : return 0;
}
return 0;
}


void resetear() {
int i,j;
object *sal;
if (!permitido(TP->query_cap_name())) {
tell_object(TP,"No te esta permitido estar aqui!!n");
return 1;
}

sal=users();
for (i=0;i<sizeof(sal);i++) if (sal[i]->query_personal_shadow()) {
sal[i]->dest_personal();
if (sal[i]->query_property("passed out"))
sal[i]->remove_property("passed out");
}
encendida=0;
dentro=0;
iniciada=0;
player1=0;
player2=0;
for(i=1;i<10;i++) {
sal=all_inventory(load_object("/d/omiq/personal/rooms/ring"+i));
for(j=0;j<sizeof(sal);j++) sal[j]->move(TO);
}
tell_object(TP,"%^BOLD%^CYAN%^Omiq reseteada.%^RESET%^n"); return 1; }

int query_iniciada() { return encendida; }

void setup() {
set_short("Control del Desafio Personal");
set_long("Esta es la habitacion desde donde se controla todo del Desafio Personal"
"ntActivar : Activar desafio personal para que la gente pueda entrar."
"ntApagar : Apaga la Omiq Personal."
"ntQuien : Que dos jugadores estan dentro en este momento."
"ntResetear : Resetear la Omiq Personal, y sacar todos los objetos."
"ntTiempo : Hora a la que terminara la Omiq Personal."
// "ntPuntos : Como van los puentos."
"nn");
set_light(30);
encendida=0;
add_property("no_clean_up", 1);
add_exit("fuera",ROOMS+"camino_1","door");
}

void init() {
::init();

add_action("activar","activar");
add_action("apagar","apagar");
add_action("quien","quien");
add_action("resetear","resetear");
add_action("tiempo","tiempo");
// add_action("puntos","puntos");
}

int tiempo() {
if (!encendida) { tell_object(TP,"La Omiq no ha sido activada aun.n"); return 1; } if (!fin) { tell_object(TP,"No se a determinado hora de finalizacion.n"); return 1; } write ("Finalizacion de la Omiq Personal : "+ctime(fin)+".n"); return 1; }

int quien() {
if (iniciada) {
if (!player1 || !player2) {
write("El combate ya a finalizado y se esta esperando que salga el ganador.n");
return 1;
}
write ("Luchadores dentro: "+player1->query_cap_name()+" contra "+player2->query_cap_name()+".n");
}
else {
if (player1) {
write(player1->query_cap_name()+" esta esperando a su contrincante.n");
return 1;
}
write ("No hay nadie dentro del Desafio.n");
}
return 1;
}

int apagar() {
if (!permitido(TP->query_cap_name())) {
tell_object(TP,"No te esta permitido estar aqui!!n");
return 1;
}
if (!encendida) { tell_object(TP,"La Omiq no estaba lanzada.n"); return 1; } encendida=0; tell_object(TP,"Has apagado La Omiq Personal, Ya no habran mas luchas.n"); return 1; }

int activar(string str) {
int entero;

object *todos=users();
int i;
for(i=0;i<sizeof(todos);i++) tell_object(todos[i],"Habitantes de los Reinosnn"
"Nos complace anunciarles que a dado Comienzo el Desafio Personal!!n"
"Con este desafio Podras de,mostrarle a tu amigo que eres major que el, sin miedo a matarlon"
"Inauguracion, hoy Gratis!! estamos en el camino de Anduar a Orgoth pasense y veann"
"n");


if (!permitido(TP->query_cap_name())) {
tell_object("No te esta permitido estar aqui, Fuera!!!.n");
tell_object(find_living("sathan"),"%^BOLD%^RED%^"+TP->query_cap_name()+" esta intentando activar la omiq sin permiso!!.%^RESET%^n");
return 1;
}
encendida=1;
tell_object(find_living("sathan"),"%^BOLD%^RED%^"+TP->query_cap_name()+" acaba de activar la Omiq Personal.%^RESET%^n"); if (str) {
sscanf(str, "%d", entero);
if (!entero) { tell_object(TP,"Introduce el numero en minutos.n"); return 1; }
inicio=time();
fin=time()+entero*60;
tell_object(TP,"La Omiq ha sido activada para "+entero+" minutos.n");
tell_object(TP,"La Omiq terminara : "+ctime(fin)+"n");
write_file("/d/omiq/personal/log/omiq.log",TP->query_cap_name()+" a lanzado la Omiq ** "+ctime(time())+" ** Fin ** "+ctime(fin)+" **n",0);
}
else { inicio=0; fin=0; write_file("/d/omiq/personal/log/omiq.log",TP->query_cap_name()+" a lanzado la Omiq ** "+ctime(time())+" ** sin determinar fin.n",0); } return 1; }


string player1() { return player1->query_cap_name(); } string player2() { return player2->query_cap_name(); }

int se_puede_entrar() {
if (fin && time()>=fin) encendida=0;
if (!encendida) return 0;
if (iniciada) return 0;
return 1;
}

void comenzar() {
iniciada=1;
tell_object(player1,"%^BOLD%^RED%^Da comienzo la lucha!!%^RESET%^n");
tell_object(player2,"%^BOLD%^RED%^Da comienzo la lucha!!%^RESET%^n");
player1->remove_property("passed out");
player2->remove_property("passed out"); }

int entra_player(object ob) {
object som;
tell_room(ENV(ob),ob->query_cap_name()+" entra en la Arena.n",ob);
ob->move("/d/omiq/personal/rooms/ring"+(random(9)+1)+".c");
dentro++;
if (dentro==1) player1=ob;
else player2=ob;
ob->add_property("passed out","preparandote para la lucha.n");
tell_room(ENV(ob),ob->query_cap_name()+" entra a la Arena.n",TP);
tell_object(ob,"Entras a la Arena.n");
som=new(SHADOW);
som->setup_shadow(ob);
if (dentro>1) comenzar();
return 1;
}

void player_caido(object ob) {
object ganador;
player1->stop_fight(player2);
player2->stop_fight(player1);
if (player1->query_timed_property("flipped")) player1->remove_timed_property("flipped");
if (player2->query_timed_property("flipped")) player2->remove_timed_property("flipped");
if (ob==player1) ganador=player2;
else ganador=player1;
ob->move(FUERA);
ob->look_me();
tell_object(ganador,"%^BOLD%^RED%^Has ganado la Batalla.%^RESET%^n"); tell_object(ob,"%^BOLD%^Has perdido la Batalla.%^RESET%^n"); TX("Ganador "+ganador->query_cap_name()+".");
ob->add_timed_property("passed out","Estas inconciente y no ves
ob->nadan",5);
tell_room(TO,"Entran corriendo unos clerigos y se llevan a"+ob->query_cap_name()+" de la habitacion.n",({ player1,player2 })); call_out("salirer",4,ganador); }

void salirer(object ob){
player1->destruct_desafio_shadow();
player2->destruct_desafio_shadow();
"/d/omiq/personal/rooms/ring8"->poner_salida();
player1->stop_fight(player2);
player2->stop_fight(player1);
dentro=0;
player1=0;
player2=0;
}

int player_fuera() { iniciada=0; }
Nginx.ru php.net MySQL.com Debian.com
Rlmud.org Hosted by
Reinos de Leyenda
 
Deathlogs.com Originaly created by
Espen Solbu