Added "All Clear" score bonus for fully 100%-ing a level.
Merge separate palettes into multi-palettes, adapt PaletteLight to handle this. Added a couple extra voice sounds to the Demolitionist.
This commit is contained in:
parent
28eb322504
commit
334d0a6d17
55 changed files with 228 additions and 47 deletions
|
|
@ -458,7 +458,7 @@ The scoring system is pretty straightforward. Each enemy you kill will give you
|
|||
* +2000 if the enemy killed is a boss.
|
||||
* +1000 if you've killed the last enemy in the map.
|
||||
|
||||
You are also given +100 points for each secret found, +1000 if it's the final secret. Countable items give +10 points each or +500 if it's the final item.
|
||||
You are also given +100 points for each secret found, +1000 if it's the final secret. Countable items give +10 points each or +500 if it's the final item. In addition, +5000 will be given to all players if the level is fully cleared (100% kills/items/secrets).
|
||||
|
||||
Score can be used to buy items on the in-game store, and it is preserved between hubs.
|
||||
|
||||
|
|
|
|||
|
|
@ -932,6 +932,7 @@ SWWM_LASTITEM = "\cf%s\cf got the last item. +%d\c-";
|
|||
SWWM_LASTMONSTER = "\cf%s\cf killed the last monster. +%d\c-";
|
||||
SWWM_NEWLORE = "New entries have been added to the Library.";
|
||||
SWWM_SELLEXTRA = "\cf%s\cf sold an extra %s\cf. +%d\c-";
|
||||
SWWM_ALLCLEAR = "\cxLevel all clear! \cf+%d\c-";
|
||||
// intermission tips
|
||||
SWWM_NINTERTIP = "85";
|
||||
SWWM_INTERTIP = "Tip #%d:";
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ SWWM_LORETXT_SAYABEAN = "\cxDesignation:\c-\n\cf Haunted Saya Bean Plush\c-\n\cx
|
|||
SWWM_LORETAG_MILKBREADS = "Milk Breads";
|
||||
SWWM_LORETAB_MILKBREADS = "Item";
|
||||
SWWM_LOREREL_MILKBREADS = "Kirin;Anarukon;Saya";
|
||||
SWWM_LORETXT_MILKBREADS = "\cxDesignation:\c-\n\cf Akkouxhei Milk Bread\c-\n\cxManufacturer:\c-\n\cf Sykhai Empire\c-\n\cxClassification:\c-\n\cf Pastry\c-\n\nA delicacy of Akkouxhei cuisine, \cfMilk Breads\c- as they are commonly called by the locals are a soft, sugary pastry typically eaten during special events, such as birthdays or weddings. Soft, fluffy buns of sweet bread enhanced with the refined sap of the native \cfYranakha\c- trees and mixed with condensed \cfGray Beast\c- milk, they melt in the mouth with each bite, becoming increasingly sweeter.\n\nThough it is not generally a problem for the native \cfAnarukon\c-, the obscene sugar content of these has proven to be dangerous to mortals unless consumed in moderation, potentially resulting in the development of cardiovascular diseases or even death.\n\nNevertheless, they are quite popular around the world. Many visit the \cfSykhai Empire\c- solely to have a chance at eating them, and may even stay for more. It is even said that they might be one of the secrets behind the nation's rapid growth.\n\n\cxSaya's Notes:\c-\n\cfYou know, learning that the milk comes from THOSE THINGS has absolutely not changed at all my opinion. This stuff is heavenly, it's the most delicious thing ever created, it's so sweet I'd just die for them. I mean, it kinda happened once when I overdosed on them (good god that was embarrassing). Yeah, no wonder I fucking died when I had more sugar than blood in my body. Kirin-kun said he actually heard my heart explode, but I bet he was just being dramatic, there's no way that's what happened.\c-";
|
||||
SWWM_LORETXT_MILKBREADS = "\cxDesignation:\c-\n\cf Akkouxhei Milk Bread\c-\n\cxManufacturer:\c-\n\cf Sykhai Empire\c-\n\cxClassification:\c-\n\cf Pastry\c-\n\nA delicacy of Akkouxhei cuisine, \cfMilk Breads\c- as they are commonly called by the locals are a soft, sugary pastry typically eaten during special events, such as birthdays or weddings. Soft, fluffy buns of sweet bread enhanced with the refined sap of the native \cfYranakha\c- trees and mixed with condensed \cfGray Beast\c- milk, they melt in the mouth with each bite, becoming increasingly sweeter.\n\nThough it is not generally a problem for the native \cfAnarukon\c-, the obscene sugar content of these has proven to be dangerous to mortals unless consumed in moderation, potentially resulting in the development of cardiovascular diseases or even death.\n\nNevertheless, they are quite popular around the world. Many visit the \cfSykhai Empire\c- solely to have a chance at eating them, and may even stay for more. It is even said that they might be one of the secrets behind the nation's rapid growth.\n\n\cxSaya's Notes:\c-\n\cfYou know, learning that the milk comes from THOSE THINGS has absolutely not changed at all my opinion. This stuff is heavenly, it's the most delicious thing ever created, it's so sweet I'd just die for them. I mean, it kinda happened once when I overdosed on them (good god that was embarrassing). Yeah, no wonder I fucking died when I had more sugar than blood in my body. Kirin-kun said he actually heard my heart explode, but I bet he was just being dramatic, there's no way that's what happened.\c-\n\n\cfOh yeah, and there's a myth going around that if you eat enough of these your boobs will get huge. I totally don't believe that's possible, of course not. What kind of fool would purposefully overdose on them to grow a pair of real big honkers?\c-";
|
||||
SWWM_LORETAG_PROPULSOR = "JetBurst Impulsor";
|
||||
SWWM_LORETAB_PROPULSOR = "Item";
|
||||
SWWM_LOREREL_PROPULSOR = "Forx;Saya;Ibuki;Unissix";
|
||||
|
|
|
|||
|
|
@ -868,6 +868,7 @@ SWWM_LASTITEM = "\cf%s\cf obtuvo el último ítem. +%d\c-";
|
|||
SWWM_LASTMONSTER = "\cf%s\cf mató al último enemigo. +%d\c-";
|
||||
SWWM_NEWLORE = "Hay nuevas entradas disponibles en la Biblioteca.";
|
||||
SWWM_SELLEXTRA = "\cf%s\cf vendió un %s\cf extra. +%d\c-";
|
||||
SWWM_ALLCLEAR = "\cx¡Nivel despejado! \cf+%d\c-";
|
||||
// intermission tips
|
||||
SWWM_INTERTIP = "Consejo #%d:";
|
||||
SWWM_INTERTIP1 = "La Demolicionista es inmune al ahogamiento, veneno e incluso daño por caída (excluyendo hoyos de muerte instantánea).";
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ SWWM_LORETXT_BLACKFIREIGNITER = "\cxDesignación:\c-\n\cf Encendedor de Fuego Ne
|
|||
SWWM_LORETXT_IBUKI = "\cxNombre Completo:\c-\n\cf Ibuki Miyamoto\c-\n\cf Oni Rojo (nombre en clave)\c-\n\cxNacionalidad:\c-\n\cf Japonesa\c-\n\cxFecha de Nacimiento:\c-\n\cf 2074-09-09\c-\n\cxTwitter\c-\n\cf @lewd_ibuki (principal)\c-\n\cf @ibuki_tiddy (fotos)\c-\n\n\cfIbuki\c- es el resultado del programa de supersoldado \cfOni Rojo\c-, ideado por \cfSaya Miyamoto\c- de \cfAkari Labs\c-. La existencia de este proyecto se mantuvo en secreto hasta su revelación pública en Junio de 2077. Hubo considerable controversia alrededor del programa Oni Rojo, incluyendo la implicación personal de Saya en él, habiendo aceptado un pago de 40 mil millones de dólares a cambio (lo cual se descubrió tener relación con la anterior venta del estado de Texas a México semanas antes). A pesar de su claro potencial y extraordinarias habilidades de combate, fue enviada demasiado tarde, ya que solo momentos después, la \cfCicatriz Blanca\c- ocurrió, y con ella, la devastación total de los \cfEstados Unidos\c-.\n\nMuchos años después del incidente, Ibuki fue recuperada con éxito del incendiado yermo, habiendo pasado la mayor parte del tiempo como una especie de \"mercenaria ambulante\". Regresó a Japón en Junio de 2091, y una vez instalada, pasó por varios pequeños empleos hasta encontrar su verdadera vocación como modelo de desnudos.\n\nAl haber sido creada desde el ADN de Saya, ha efectivamente heredado la inmortalidad total de la familia Miyamoto, es más, también ha recibido varias mejoras por encima las cuales han aumentado su fuerza y reflejos, junto con hacer que su piel sea a prueba de balas. Saya ha comentado que esto último significa que no necesita llevar ropa.\n\nCitando adicionalmente las \"interesantes\" decisiones de Saya, está el hecho de sus particulares rasgos físicos aparte de su fuerza, incluyendo su obviamente obsceno tamaño de busto, que muchos consideran poco práctico, totalmente en desacuerdo con Saya. Al preguntarle por más detalles, comenzó una extensa diatriba en Twitter centrada sobre \"waifus\".\n\n\cxNotas de Saya:\c-\n\cfOK vale sí, me encantan los pechotes. Pero ¿por que todo dios tiene que soltarme mierda por eso? ¿Acaso hay ALGO malo en eso, eh? Ya, eso pensaba.\c-\n\n\cfVale, Ibuki fue como, mi mayor hornypost en la vida. No me pude aguantar, sabes. Putos... Americanos idiotas que se me acercan con una barbaridad de pasta y me dicen que les haga un supersoldado. Sí, supongo que estuvieron espiando todo el rollo ese que posteé sobre bioingeniería y tal. Madre, si es que estaban desesperados, pues sí... Era realmente patético. PERO, tuve una idea justo entonces. A ver... es que estaba thirsty a más no poder, y pensé... ¿y si.. me hiciera una superfuerte novia tetuda, justo ahí?\c-\n\n\cfY bueno... eso es justo lo que pasó. Pasé tres años con todo eso, criándola en ese tubo. Era mi primera vez haciendo algo así, pero tuve suerte y todo salió de puta madre. Aunque... cuando empezaron a notar lo de la \"anormalidad en el desarrollo de los pechos del sujeto\" me puse nerviosa. ¿Y si lo mandaban todo a la mierda? Acabé admitiendo que era intencionado, soltando no se qué mierda que se me pasó por la cabeza, algo de \"tácticas de distracción\" o así, ya ni me acuerdo. Al final lo dejaron pasar.\c-\n\n\cfOh ya, ¿sabias? Técnicamente, Ibuki es mi clon. Sí, puede que haya habido algún que otro cambio, pero si mi desarrollo no se hubiera parado así porque sí, quien sabe, a lo mejor me habría visto así de sexy algún día. Desde luego da que pensar, vaya...\c-\n\n\cfSí, también me he dado cuenta de que eso significa que en teoría lo estoy haciendo conmigo misma. ¿Y? ¿Acaso es eso un problema también?\c-";
|
||||
SWWM_LORETXT_CYRUS = "\cxNombre:\c-\n\cf Cyrus Enterprises\c-\n\cxClasificación:\c-\n\cf Startup(???) Tecnológico\c-\n\cxLocalización:\c-\n\cf Isla Kopo, Kereshnovka, Rusia\c-\n\cxPágina Web:\c-\n\cf https://cyrus.enterprises\c-\n\nLa compañía personal de \cfReubens C. Karnanaiahmani\c-, actual alcalde del pueblo de \cfKereshnovka\c-, representante de toda la gente \cfQurensniv\c- de la Tierra, y segundo hijo del rey \cfMarc P. Karnanaiahmani\c-. Reubens maneja todo por su cuenta, sin tener ningún empleado.\n\nCyrus se centra principalmente en traer tecnologías altamente avanzadas de los Qurensiv a la humanidad. Entre las creaciones más notables de la compañía, está el \cfHammerspace™\c-, un método de \"almacenamiento extradimensional\" que permite que un individuo viaje ligero, necesitando solo llevar un pequeño dispositivo para almacenar y recuperar cualquier objeto que necesite a voluntad. Muchos comentarios se han hecho sobre los nombres \"frikis\" de los varios productos de la compañía, siendo éste uno de ellos.\n\nEn referencia al hombre en sí, Reubens es bien conocido no solo por ser un inventor nato, sino también por ser todo un experto en combate cuerpo a cuerpo, siendo diez veces campeón de \cfKo-Ron-Jai\c- (artes marciales Qurensniv), y también un disparador excelente, capaz de alcanzar la cabeza de una cerilla desde un kilómetro de distancia con un simple revolver (aunque esto último no ha sido confirmado). También es un ávido gamer, y se le ha notado comparar muchas veces la vida real y los videojuegos, a veces hasta niveles preocupantes.\n\nCyrus Enterprises, adicionalmente, es el patrocinador principal del proyecto \cfDemolicionista\c-, proporcionando el equipamiento requerido para sus misiones, y pagando de su propio bolsillo por cada objetivo eliminado por el Demilicionista, entre otras cosas.\n\n\cxNotas de Saya:\c-\n\cfEs un friki, UN PUTO FRIKI, ¡UN FRIKAZO!\c-\n\n\cfHala, ya lo he dicho. Es que sí, vale, lo que hace, mola y tal, pero MADRE DE DIOS es que el tío me saca de quicio con toda su mierda friki de videojuegos. ¿No dejarte ir por ahí con todo equipado, y en vez de eso CISCÁNDOLO TODO POR AHÍ para que lo recojas? Esa es una. Que después de cada misión decida quitarte TODO lo que pillaste, es otra cosa también. Pero, que nos suelte unas pelillas cada vez que revientes a algún maleante, eso puedo aceptarlo, que nos vale para cubrir los costes de todo.\c-\n\n\cfPuto friki...\c-";
|
||||
SWWM_LORETAG_MILKBREADS = "Panes de Leche";
|
||||
SWWM_LORETXT_MILKBREADS = "\cxDesignación:\c-\n\cf Pan de Leche Akkouxhei\c-\n\cxFabricante:\c-\n\cf Imperio Sykhai\c-\n\cxClasificación:\c-\n\cf Postre\c-\n\nUna delicia de la cocina Akkouxhei, los \cfPanes de Leche\c- así llamados comúnmente por los lugareños son un postre suave y dulce comido típicamente durante eventos especiales, como cumpleaños o bodas. Blandos y esponjosos bollitos de pan dulce realzados con la savia refinada de los árboles \cfYranakha\c- nativos y mezclados con leche condensada de \cfBestia Gris\c-, se derriten en la boca con cada mordisco, volviéndose más y más dulces.\n\nAunque no es generalmente un problema para los nativos \cfAnarukon\c-, el obsceno contenido de azucar de estos está confirmado como peligroso para mortales a menos que sean consumidos en moderación, potencialmente resultando en el desarrollo de enfermedades cardiovasculares o incluso la muerte.\n\nAun así, son muy populares por todo el mundo. Muchos visitan el \cfImperio Sykhai\c- solo para tener la oportunidad de comerlos, y puede que se queden para más. Se dice incluso que pueden ser uno de los secretos tras el rápido crecimiento de la nación.\n\n\cxNotas de Saya:\c-\n\cfSabes, enterarme de que la leche viene de ESAS COSAS no ha cambiado en absoluto mi opinión. Esta cosa es celestial, es lo más delicioso jamás creado, es tan dulce que me moriría por ellos. A ver, casi que pasó eso justo cuando tuve una sobredosis de ellos (madre de dios que vergüenza). Sí, no me extraña que la palmase mucho cuando tenía más azúcar que sangre en el cuerpo. Kirin-kun dijo que incluso oyó explotar mi corazón, pero apuesto a que solo estaba siendo dramático, eso no puede haber pasado.\c-";
|
||||
SWWM_LORETXT_MILKBREADS = "\cxDesignación:\c-\n\cf Pan de Leche Akkouxhei\c-\n\cxFabricante:\c-\n\cf Imperio Sykhai\c-\n\cxClasificación:\c-\n\cf Postre\c-\n\nUna delicia de la cocina Akkouxhei, los \cfPanes de Leche\c- así llamados comúnmente por los lugareños son un postre suave y dulce comido típicamente durante eventos especiales, como cumpleaños o bodas. Blandos y esponjosos bollitos de pan dulce realzados con la savia refinada de los árboles \cfYranakha\c- nativos y mezclados con leche condensada de \cfBestia Gris\c-, se derriten en la boca con cada mordisco, volviéndose más y más dulces.\n\nAunque no es generalmente un problema para los nativos \cfAnarukon\c-, el obsceno contenido de azucar de estos está confirmado como peligroso para mortales a menos que sean consumidos en moderación, potencialmente resultando en el desarrollo de enfermedades cardiovasculares o incluso la muerte.\n\nAun así, son muy populares por todo el mundo. Muchos visitan el \cfImperio Sykhai\c- solo para tener la oportunidad de comerlos, y puede que se queden para más. Se dice incluso que pueden ser uno de los secretos tras el rápido crecimiento de la nación.\n\n\cxNotas de Saya:\c-\n\cfSabes, enterarme de que la leche viene de ESAS COSAS no ha cambiado en absoluto mi opinión. Esta cosa es celestial, es lo más delicioso jamás creado, es tan dulce que me moriría por ellos. A ver, casi que pasó eso justo cuando tuve una sobredosis de ellos (madre de dios que vergüenza). Sí, no me extraña que la palmase mucho cuando tenía más azúcar que sangre en el cuerpo. Kirin-kun dijo que incluso oyó explotar mi corazón, pero apuesto a que solo estaba siendo dramático, eso no puede haber pasado.\c-\n\n\cfOh ya, y resulta que hay un mito por ahí de que si comes suficientes de estos tus tetas se ponen enormes. Pues mira que en serio no creo que sea eso posible, por supuesto que no. ¿Que clase de idiota se metería una sobredosis de estas cosas a propósito para que le crezcan unas domingas gigantes?\c-";
|
||||
SWWM_LORETAG_FORX = "Aeronáutica Forx";
|
||||
SWWM_LORETXT_FORX = "\cxNombre:\c-\n\cf Aeronáutica Forx\c-\n\cxClasificación:\c-\n\cf Fabricante de Motores de Propulsión\c-\n\cxLocalización:\c-\n\cf Kent, Inglaterra\c-\n\cxPágina Web:\c-\n\cf https://forx.co.uk\c-\n\nFundada en 2029 por \cfHarold Forx\c-, esta compañía es considerada como la única salvadora de Inglaterra tras su larga caída en la ruina económica tras el \cfBrexit\c- en 2020 y la \cfIndependencia de Escocia\c- en 2022. A pesar de estos dos golpes mortales, \cfAeronáutica Forx\c-, habiendo aparecido casi de la nada, fundada por un hombre que, hace solo pocos años pasaba su vida rebuscando en desguaces, consiguió atraer tanto dinero como para rescatar al país entero solo pocos meses después de ser fundada.\n\nForx es actualmente el proveedor Nº1 de motores de propulsión para todo tipo de aeronaves, incluyendo jets comerciales e incluso naves espaciales. Su dominio se extiende por todo el lado este del Atlántico, ya que al otro lado, en América, la \cfUAC\c- aun reina soberana, con sus propias tecnologías.\n\nAparte de motores de nave, Forx también ha adaptado sus sistemas propietarios de jets propulsores para otros usos, como el \cfImpulsor JetBurst™\c-, el primer jetpack \"realmente portátil\", o el sistema \cfCompensador Jet Rápido\c- de reducción de retroceso par almas de alto calibre, que permite su uso fuera de pesadas e incómodas servo-armaduras.\n\n\cxNotas de Saya:\c-\n\cfSí, sí, la típica historia de \"pobreza a riqueza\". Huérfano sin techo que se convierte en un \"auto-hecho\" millonario a base de esfuerzo y perseverancia, bla bla. Y un huevo de avión. Me apuesto a que hay algo de todo este tema que no le ha contado a nadie. TIENE que ser eso. Nadie va y de repente se vuelve asquerosamente rico así como si nada a menos que tenga contactos en algún lado, no me lo creo.\c-\n\n\cfAparte, el tío es un capullo. Como cualquier sucio cerdo capitalista, sinceramente. ¿Puedes creerte que el muy hijo de puta intentó echar abajo el orfanato en el que creció? Pero la cosa es que, lo intentó, sí... pero no fue bien la cosa, y madre si fue todo un espectáculo.\c-\n\n\cfA ver, la cosa va así, el tío primero intenta decirles que se larguen de ahí y le dejen tirar abajo todo para construir mierdas por ahí. Ni puto caso. Entonces, va ahí en persona, y ESA es la mejor parte. Después de discutir con el director del orfanato, que conoce al tío personalmente, va y le METE UNA HOSTIA TREMENDA que el tío pega la media vuelta y corre fuera llorando.\c-\n\n\cfNo es coña, Demo-chan, te juro que eso es lo que vi. He visto los vídeos de archivo cien veces, porque me ayudan a sentirme mejor cuando ando de mala hostia, y... siempre, la parte en la que el viejales le mete un hostiazo del revés al tío, nunca falla. Es que me desorino. Es BUENÍSIMO.\c-\n\n\cfEn serio, eso es lo que se merece esta gente. No sabes cuantas veces he deseado poder ir ahí y darle una buena paliza al niñato bastardo ese de Kelliher. Desde luego me haría sentir mejor, sí. Que se joda, él y la UAC también. El meme ese de \"comer a los ricos\" sigue siendo relevante, pero yo digo que hay que poner de moda otra cosa, que lo que realmente necesitan es una buena somanta de hostias.\c-";
|
||||
SWWM_LORETXT_SIDHE = "\cxNombre:\c-\n\cf Sidhe\c-\n\cxClasificación:\c-\n\cf Raza Élfica\c-\n\cxLocalización:\c-\n\cf Parthoris\c-\n\nLos \cfSidhe\c- son una de las principales especies nativas del mundo de \cfParthoris\c-. Muy cercanos a los elfos de fantasía, en cierto modo. Poseen un vínculo natural con la magia, y son reconocidos como luchadores diestros, también. Antes de que llegaran los \cfJinetes de Serpiente\c-, ofrecían sus servicios como guardianes sagrados de las siete naciones, pero una vez se hicieron presentes estas criaturas demoníacas, fueron los únicos que rechazaron servirlos, a diferencia del resto que se rindió tan fácilmente.\n\nAquellos que antes veneraban a los Sidhe ahora estaban en su contra, bajo el control de los Jinetes, y los ejércitos de los siete reinos fueron enviados a destruirlos. Muy pocos sobrevivieron, dispersados por el mundo. Mientras que muchos decidieron permanecer ocultos, otros idearon planes de venganza. Notablemente, hay un pequeño grupo con quien hicimos nuestro primer contacto, y de los cuales aprendimos la mayor parte de lo que sabemos de la situación en este mundo. Pusieron sus esperanzas en un único Sidhe, llamado \cfCorvus\c-, quien pareció ser bastante prometedor. Sin embargo, una vez encontrarse con el \cfDemolicionista\c-, optó en su lugar por que nosotros tomásemos la iniciativa. Es ahora nuestra misión salvar a esta gente, y a su mundo.\n\n\cxNotas de Saya:\c-\n\cfPues sí, los elfos estos mira que fueron rápidos para pasarte todo el rollo de heroísmo a ti, desde luego. Pero es igual, eso es lo que te mola, puedo notarlo. Desde luego que te gusta ese papel, ¿a que sí?\c-\n\n\cfPor cierto, ¿como puñetas se pronuncia eso? El nombre este de \"Sidhe\"... es como... \"saidi\"? nah, eso no suena bien... hm, que más da.\c-\n\n\cfSolo espero que no se cabreen porque usamos cosas hechas de madera, eso si que sería un problema.\c-";
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
[default]
|
||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r660 \cu(Fri 4 Dec 17:56:25 CET 2020)";
|
||||
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r661 \cu(Sat 5 Dec 18:05:13 CET 2020)";
|
||||
|
|
|
|||
|
|
@ -20,3 +20,5 @@ Nevertheless, they are quite popular around the world. Many visit the **Sykhai E
|
|||
|
||||
\cxSaya's Notes:\c-
|
||||
\cfYou know, learning that the milk comes from THOSE THINGS has absolutely not changed at all my opinion. This stuff is heavenly, it's the most delicious thing ever created, it's so sweet I'd just die for them. I mean, it kinda happened once when I overdosed on them (good god that was embarrassing). Yeah, no wonder I fucking died when I had more sugar than blood in my body. Kirin-kun said he actually heard my heart explode, but I bet he was just being dramatic, there's no way that's what happened.\c-
|
||||
|
||||
\cfOh yeah, and there's a myth going around that if you eat enough of these your boobs will get huge. I totally don't believe that's possible, of course not. What kind of fool would purposefully overdose on them to grow a pair of real big honkers?\c-
|
||||
|
|
|
|||
|
|
@ -16,3 +16,5 @@ Aun así, son muy populares por todo el mundo. Muchos visitan el **Imperio Sykha
|
|||
|
||||
\cxNotas de Saya:\c-
|
||||
\cfSabes, enterarme de que la leche viene de ESAS COSAS no ha cambiado en absoluto mi opinión. Esta cosa es celestial, es lo más delicioso jamás creado, es tan dulce que me moriría por ellos. A ver, casi que pasó eso justo cuando tuve una sobredosis de ellos (madre de dios que vergüenza). Sí, no me extraña que la palmase mucho cuando tenía más azúcar que sangre en el cuerpo. Kirin-kun dijo que incluso oyó explotar mi corazón, pero apuesto a que solo estaba siendo dramático, eso no puede haber pasado.\c-
|
||||
|
||||
\cfOh ya, y resulta que hay un mito por ahí de que si comes suficientes de estos tus tetas se ponen enormes. Pues mira que en serio no creo que sea eso posible, por supuesto que no. ¿Que clase de idiota se metería una sobredosis de estas cosas a propósito para que le crezcan unas domingas gigantes?\c-
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
palettes/SpRainbow.pal
Normal file
BIN
palettes/SpRainbow.pal
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
37
sndinfo.txt
37
sndinfo.txt
|
|
@ -6,6 +6,7 @@ crash/curb sounds/CURB.ogg
|
|||
brutal/ezmodo sounds/EASYMODO.ogg
|
||||
bestsound sounds/CORK.ogg
|
||||
haha/dab sounds/DAB.ogg
|
||||
bruh sounds/BRUH.ogg
|
||||
|
||||
saya/giggle1 sounds/saya/saya_giggle1.ogg
|
||||
saya/giggle2 sounds/saya/saya_giggle2.ogg
|
||||
|
|
@ -275,6 +276,34 @@ voice/default/koraxmasters6 sounds/voice/default/demokoraxmasters6.ogg
|
|||
voice/default/koraxmasters7 sounds/voice/default/demokoraxmasters7.ogg
|
||||
voice/default/koraxmasters8 sounds/voice/default/demokoraxmasters8.ogg
|
||||
voice/default/koraxmasters9 sounds/voice/default/demokoraxmasters9.ogg
|
||||
voice/default/giggle1 sounds/voice/default/demogigle1.ogg
|
||||
voice/default/giggle2 sounds/voice/default/demogigle2.ogg
|
||||
voice/default/giggle3 sounds/voice/default/demogigle3.ogg
|
||||
voice/default/giggle4 sounds/voice/default/demogigle4.ogg
|
||||
voice/default/giggle5 sounds/voice/default/demogigle5.ogg
|
||||
voice/default/giggle6 sounds/voice/default/demogigle6.ogg
|
||||
voice/default/giggle7 sounds/voice/default/demogigle7.ogg
|
||||
voice/default/giggle8 sounds/voice/default/demogigle8.ogg
|
||||
voice/default/giggle9 sounds/voice/default/demogigle9.ogg
|
||||
voice/default/giggle10 sounds/voice/default/demogigle10.ogg
|
||||
voice/default/giggle11 sounds/voice/default/demogigle11.ogg
|
||||
voice/default/giggle12 sounds/voice/default/demogigle12.ogg
|
||||
voice/default/giggle13 sounds/voice/default/demogigle13.ogg
|
||||
voice/default/giggle14 sounds/voice/default/demogigle14.ogg
|
||||
voice/default/giggle15 sounds/voice/default/demogigle15.ogg
|
||||
voice/default/giggle16 sounds/voice/default/demogigle16.ogg
|
||||
voice/default/giggle17 sounds/voice/default/demogigle17.ogg
|
||||
voice/default/giggle18 sounds/voice/default/demogigle18.ogg
|
||||
voice/default/giggle19 sounds/voice/default/demogigle19.ogg
|
||||
voice/default/hug1 sounds/voice/default/demohug1.ogg
|
||||
voice/default/hug2 sounds/voice/default/demohug2.ogg
|
||||
voice/default/hug3 sounds/voice/default/demohug3.ogg
|
||||
voice/default/hug4 sounds/voice/default/demohug4.ogg
|
||||
voice/default/hug5 sounds/voice/default/demohug5.ogg
|
||||
voice/default/hug6 sounds/voice/default/demohug6.ogg
|
||||
voice/default/hug7 sounds/voice/default/demohug7.ogg
|
||||
voice/default/hug8 sounds/voice/default/demohug8.ogg
|
||||
voice/default/hug9 sounds/voice/default/demohug9.ogg
|
||||
|
||||
$random voice/default/grunt { voice/default/grunt1 voice/default/grunt2 voice/default/grunt3 voice/default/grunt4 voice/default/grunt5 voice/default/grunt6 }
|
||||
$random voice/default/lopain { voice/default/lopain1 voice/default/lopain2 voice/default/lopain3 voice/default/lopain4 voice/default/lopain5 }
|
||||
|
|
@ -282,6 +311,11 @@ $random voice/default/pain { voice/default/pain1 voice/default/pain2 voice/defau
|
|||
$random voice/default/hipain { voice/default/hipain1 voice/default/hipain2 voice/default/hipain3 voice/default/hipain4 voice/default/hipain5 }
|
||||
$random voice/default/death { voice/default/death1 voice/default/death2 voice/default/death3 voice/default/death4 voice/default/death5 }
|
||||
|
||||
$random voice/default/giggle { voice/default/giggle1 voice/default/giggle2 voice/default/giggle3 voice/default/giggle4 voice/default/giggle5 voice/default/giggle6 voice/default/giggle7 voice/default/giggle8 voice/default/giggle9 voice/default/giggle10 voice/default/giggle11 voice/default/giggle12 voice/default/giggle13 voice/default/giggle14 voice/default/giggle15 voice/default/giggle16 voice/default/giggle17 voice/default/giggle18 voice/default/giggle19 }
|
||||
$random voice/default/hug { voice/default/hug1 voice/default/hug2 voice/default/hug3 voice/default/hug4 voice/default/hug5 voice/default/hug6 voice/default/hug7 voice/default/hug8 voice/default/hug9 }
|
||||
$random voice/default/gigglelow { voice/default/giggle1 voice/default/giggle2 voice/default/giggle5 voice/default/giggle6 voice/default/giggle8 voice/default/giggle10 voice/default/giggle15 voice/default/giggle16 voice/default/giggle18 }
|
||||
$random voice/default/gigglehigh { voice/default/giggle3 voice/default/giggle4 voice/default/giggle7 voice/default/giggle9 voice/default/giggle11 voice/default/giggle12 voice/default/giggle13 voice/default/giggle14 voice/default/giggle17 }
|
||||
|
||||
demolitionist/walk1 sounds/demolitionist/demowalk1.ogg
|
||||
demolitionist/walk2 sounds/demolitionist/demowalk2.ogg
|
||||
demolitionist/walk3 sounds/demolitionist/demowalk3.ogg
|
||||
|
|
@ -872,6 +906,9 @@ misc/nocheat sounds/DSNOPE.ogg
|
|||
misc/drumroll sounds/DRUMROLL.ogg
|
||||
misc/tada sounds/TADA.ogg
|
||||
misc/heart sounds/KOKORO.ogg
|
||||
misc/achievement sounds/CTF6.ogg
|
||||
misc/wow sounds/WOW.ogg
|
||||
misc/achievement2 sounds/YAY.ogg
|
||||
misc/gibber1 sounds/general/Gib1.ogg
|
||||
misc/gibber2 sounds/general/Gib2.ogg
|
||||
misc/gibber3 sounds/general/Gib3.ogg
|
||||
|
|
|
|||
BIN
sounds/voice/default/demogiggle1.ogg
Normal file
BIN
sounds/voice/default/demogiggle1.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle10.ogg
Normal file
BIN
sounds/voice/default/demogiggle10.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle11.ogg
Normal file
BIN
sounds/voice/default/demogiggle11.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle12.ogg
Normal file
BIN
sounds/voice/default/demogiggle12.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle13.ogg
Normal file
BIN
sounds/voice/default/demogiggle13.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle14.ogg
Normal file
BIN
sounds/voice/default/demogiggle14.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle15.ogg
Normal file
BIN
sounds/voice/default/demogiggle15.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle16.ogg
Normal file
BIN
sounds/voice/default/demogiggle16.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle17.ogg
Normal file
BIN
sounds/voice/default/demogiggle17.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle18.ogg
Normal file
BIN
sounds/voice/default/demogiggle18.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle19.ogg
Normal file
BIN
sounds/voice/default/demogiggle19.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle2.ogg
Normal file
BIN
sounds/voice/default/demogiggle2.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle3.ogg
Normal file
BIN
sounds/voice/default/demogiggle3.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle4.ogg
Normal file
BIN
sounds/voice/default/demogiggle4.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle5.ogg
Normal file
BIN
sounds/voice/default/demogiggle5.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle6.ogg
Normal file
BIN
sounds/voice/default/demogiggle6.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle7.ogg
Normal file
BIN
sounds/voice/default/demogiggle7.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle8.ogg
Normal file
BIN
sounds/voice/default/demogiggle8.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demogiggle9.ogg
Normal file
BIN
sounds/voice/default/demogiggle9.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug1.ogg
Normal file
BIN
sounds/voice/default/demohug1.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug2.ogg
Normal file
BIN
sounds/voice/default/demohug2.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug3.ogg
Normal file
BIN
sounds/voice/default/demohug3.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug4.ogg
Normal file
BIN
sounds/voice/default/demohug4.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug5.ogg
Normal file
BIN
sounds/voice/default/demohug5.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug6.ogg
Normal file
BIN
sounds/voice/default/demohug6.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug7.ogg
Normal file
BIN
sounds/voice/default/demohug7.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug8.ogg
Normal file
BIN
sounds/voice/default/demohug8.ogg
Normal file
Binary file not shown.
BIN
sounds/voice/default/demohug9.ogg
Normal file
BIN
sounds/voice/default/demohug9.ogg
Normal file
Binary file not shown.
|
|
@ -6,10 +6,10 @@
|
|||
# voice/<name>/<group><#> for the sndinfo entries
|
||||
# SWWM_SUBS_<NAME>_<GROUP><#>, plus a SWWM_SUBS_<NAME>_N<GROUP> counter,
|
||||
# for the language strings
|
||||
# with the exception of pain/death/grunt sounds (which should additionally have
|
||||
# a $random entry in sndinfo), all lines you may want to register require a
|
||||
# subtitle language string so they can be properly detected, but you can set
|
||||
# them to an empty string if you don't want text to display. also don't forget
|
||||
# to add a SWWM_VOICENAME_* language string for each voice type so they have a
|
||||
# "human-readable" name in the options menu
|
||||
# with the exception of pain/death/grunt sounds and the like (which should
|
||||
# additionally have a $random entry in sndinfo), all lines you may want to
|
||||
# register require a subtitle language string so they can be properly detected,
|
||||
# but you can set them to an empty string if you don't want text to display.
|
||||
# also don't forget to add a SWWM_VOICENAME_* language string for each voice
|
||||
# type so they have a "human-readable" name in the options menu
|
||||
default
|
||||
|
|
|
|||
|
|
@ -340,6 +340,7 @@ Class PaletteLight : PointLight
|
|||
{
|
||||
Color pal[256];
|
||||
bool IsLooping;
|
||||
int InitialReactionTime;
|
||||
|
||||
Default
|
||||
{
|
||||
|
|
@ -349,7 +350,7 @@ Class PaletteLight : PointLight
|
|||
}
|
||||
private void UpdateLight()
|
||||
{
|
||||
int index = clamp(255-((255*ReactionTime)/abs(default.ReactionTime)),0,255);
|
||||
int index = clamp(255-((255*ReactionTime)/abs(InitialReactionTime)),0,255);
|
||||
args[LIGHT_RED] = pal[index].r;
|
||||
args[LIGHT_GREEN] = pal[index].g;
|
||||
args[LIGHT_BLUE] = pal[index].b;
|
||||
|
|
@ -357,13 +358,23 @@ Class PaletteLight : PointLight
|
|||
override void PostBeginPlay()
|
||||
{
|
||||
Super.PostBeginPlay();
|
||||
int lump = Wads.CheckNumForFullname(String.Format("palettes/%s.pal",GetTag()));
|
||||
InitialReactionTime = ReactionTime;
|
||||
String palname = GetTag();
|
||||
int sep = palname.IndexOf(",");
|
||||
int palnum = 0;
|
||||
if ( sep != -1 )
|
||||
{
|
||||
String palnumstr = palname.Mid(sep+1);
|
||||
palnum = palnumstr.ToInt()*768;
|
||||
palname.Truncate(sep);
|
||||
}
|
||||
int lump = Wads.CheckNumForFullname(String.Format("palettes/%s.pal",palname));
|
||||
String paldat = Wads.ReadLump(lump);
|
||||
for ( int i=0; i<256; i++ )
|
||||
{
|
||||
pal[i].r = paldat.ByteAt(i*3);
|
||||
pal[i].g = paldat.ByteAt(i*3+1);
|
||||
pal[i].b = paldat.ByteAt(i*3+2);
|
||||
pal[i].r = paldat.ByteAt(palnum++);
|
||||
pal[i].g = paldat.ByteAt(palnum++);
|
||||
pal[i].b = paldat.ByteAt(palnum++);
|
||||
}
|
||||
if ( ReactionTime < 0 )
|
||||
{
|
||||
|
|
@ -384,7 +395,7 @@ Class PaletteLight : PointLight
|
|||
Destroy();
|
||||
return;
|
||||
}
|
||||
else ReactionTime = abs(default.ReactionTime);
|
||||
else ReactionTime = abs(InitialReactionTime);
|
||||
}
|
||||
if ( target ) SetOrigin(target.pos,true);
|
||||
UpdateLight();
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ Class YnykronImpactLight : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "WhiteExpl2";
|
||||
Tag "WhiteExpl,1";
|
||||
ReactionTime 60;
|
||||
Args 0,0,0,400;
|
||||
}
|
||||
|
|
@ -126,7 +126,7 @@ Class YnykronSubImpactLight : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "WhiteExpl2";
|
||||
Tag "WhiteExpl,1";
|
||||
ReactionTime 20;
|
||||
Args 0,0,0,200;
|
||||
}
|
||||
|
|
@ -146,7 +146,7 @@ Class YnykronBeamLight : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "WhiteExpl2";
|
||||
Tag "WhiteExpl,1";
|
||||
ReactionTime 50;
|
||||
Args 0,0,0,600;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -133,7 +133,7 @@ Class AirRingLight : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "ImpactWav2";
|
||||
Tag "ImpactWav,1";
|
||||
ReactionTime 30;
|
||||
Args 0,0,0,120;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -422,6 +422,79 @@ Class FancyConfetti : Actor
|
|||
Stop;
|
||||
}
|
||||
}
|
||||
Class SuperFancySparkle : Actor
|
||||
{
|
||||
Default
|
||||
{
|
||||
RenderStyle "Add";
|
||||
Radius 0.1;
|
||||
Height 0;
|
||||
Scale .2;
|
||||
+NOGRAVITY;
|
||||
+NOBLOCKMAP;
|
||||
+DONTSPLASH;
|
||||
+ROLLSPRITE;
|
||||
+ROLLCENTER;
|
||||
+FORCEXYBILLBOARD;
|
||||
+NOINTERACTION;
|
||||
}
|
||||
override void PostBeginPlay()
|
||||
{
|
||||
Scale *= FRandom[ExploS](.75,1.5);
|
||||
specialf1 = FRandom[ExploS](.95,.98);
|
||||
specialf2 = FRandom[ExploS](.005,.015);
|
||||
double ang = FRandom[ExploS](0,360);
|
||||
double pt = FRandom[ExploS](-90,30);
|
||||
vel = (cos(ang)*cos(pt),sin(ang)*cos(pt),sin(-pt))*FRandom[ExploS](4,20);
|
||||
frame = Random[ExploS](0,7);
|
||||
}
|
||||
override void Tick()
|
||||
{
|
||||
if ( isFrozen() ) return;
|
||||
A_SetScale(scale.x*specialf1);
|
||||
A_FadeOut(specialf2);
|
||||
Vector3 dir = vel;
|
||||
double magvel = dir.length();
|
||||
magvel *= .99;
|
||||
if ( magvel > 0. )
|
||||
{
|
||||
dir /= magvel;
|
||||
dir += .2*(FRandom[ExploS](-1,1),FRandom[ExploS](-1,1),FRandom[ExploS](-1,1));
|
||||
vel = dir.unit()*magvel;
|
||||
}
|
||||
SetOrigin(level.Vec3Offset(pos,vel),true);
|
||||
}
|
||||
States
|
||||
{
|
||||
Spawn:
|
||||
BLPF # -1 Bright;
|
||||
Stop;
|
||||
}
|
||||
}
|
||||
Class SuperPartyLight : PaletteLight
|
||||
{
|
||||
Default
|
||||
{
|
||||
Tag "SpRainbow";
|
||||
Args 0,0,0,100;
|
||||
ReactionTime 40;
|
||||
}
|
||||
override void PostBeginPlay()
|
||||
{
|
||||
SetTag(String.Format("SpRainbow,%d",Random[ExploS](0,7)));
|
||||
ReactionTime = Random[ExploS](30,50);
|
||||
double ang = FRandom[ExploS](0,360);
|
||||
double pt = FRandom[ExploS](-90,30);
|
||||
vel = (cos(ang)*cos(pt),sin(ang)*cos(pt),sin(-pt))*FRandom[ExploS](2,10);
|
||||
Super.PostBeginPlay();
|
||||
}
|
||||
override void Tick()
|
||||
{
|
||||
Super.Tick();
|
||||
if ( isFrozen() ) return;
|
||||
SetOrigin(level.Vec3Offset(pos,vel),true);
|
||||
}
|
||||
}
|
||||
Class PartyTime : Actor
|
||||
{
|
||||
bool ignite;
|
||||
|
|
@ -460,16 +533,25 @@ Class PartyTime : Actor
|
|||
}
|
||||
action void A_Confetti()
|
||||
{
|
||||
A_StartSound("misc/tada",CHAN_ITEM);
|
||||
if ( !bAMBUSH ) A_StartSound("misc/tada",CHAN_ITEM);
|
||||
double ang, pt;
|
||||
int numpt = Random[ExploS](100,120);
|
||||
if ( bAMBUSH ) numpt *= 2;
|
||||
for ( int i=0; i<numpt; i++ )
|
||||
{
|
||||
ang = FRandom[ExploS](0,360);
|
||||
pt = FRandom[ExploS](-90,30);
|
||||
let c = Spawn("FancyConfetti",Vec3Offset(0,0,specialf1));
|
||||
c.vel = (cos(pt)*cos(ang),cos(pt)*sin(ang),-sin(pt))*FRandom[ExploS](2,8);
|
||||
if ( bAMBUSH ) c.vel *= 2;
|
||||
}
|
||||
if ( !bAMBUSH ) return;
|
||||
numpt = Random[ExploS](60,80);
|
||||
for ( int i=0; i<numpt; i++ )
|
||||
Spawn("SuperFancySparkle",Vec3Offset(0,0,specialf1));
|
||||
numpt = Random[ExploS](6,9);
|
||||
for ( int i=0; i<numpt; i++ )
|
||||
Spawn("SuperPartyLight",Vec3Offset(0,0,specialf1));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -235,6 +235,7 @@ Class SWWMHandler : EventHandler
|
|||
int multilevel[MAXPLAYERS];
|
||||
int lastitemcount[MAXPLAYERS];
|
||||
bool allkills, allitems, allsecrets;
|
||||
bool mapclear;
|
||||
// for custom cheats
|
||||
transient ui int kcode;
|
||||
transient ui String kstr;
|
||||
|
|
@ -1016,7 +1017,7 @@ Class SWWMHandler : EventHandler
|
|||
if ( s ) s.lastspawn = level.totaltime;
|
||||
}
|
||||
|
||||
override void WorldTick()
|
||||
private void LangRefresh()
|
||||
{
|
||||
if ( !lang ) lang = CVar.GetCVar('language',players[consoleplayer]);
|
||||
if ( !funtags ) funtags = CVar.GetCVar('swwm_funtags',players[consoleplayer]);
|
||||
|
|
@ -1039,6 +1040,10 @@ Class SWWMHandler : EventHandler
|
|||
}
|
||||
curlang = lang.GetString();
|
||||
curfuntags = funtags.GetBool();
|
||||
}
|
||||
|
||||
private void QueueMaintenance()
|
||||
{
|
||||
if ( swwm_maxcasings != oldmaxcasings )
|
||||
{
|
||||
while ( casings && (swwm_maxcasings >= 0) && (casings_cnt > swwm_maxcasings) )
|
||||
|
|
@ -1063,25 +1068,11 @@ Class SWWMHandler : EventHandler
|
|||
oldmaxdebris = swwm_maxdebris;
|
||||
oldmaxblood = swwm_maxblood;
|
||||
oldmaxgibs = swwm_maxgibs;
|
||||
if ( !mutevoice ) mutevoice = CVar.GetCVar('swwm_mutevoice',players[consoleplayer]);
|
||||
if ( onelinertic && (onelinertic < gametic) )
|
||||
{
|
||||
if ( players[consoleplayer].health > 0 )
|
||||
{
|
||||
if ( onelinerlevel > mutevoice.GetInt() )
|
||||
players[consoleplayer].mo.A_StartSound(onelinersnd,CHAN_DEMOVOICE,CHANF_DEFAULT,1.,ATTN_NONE);
|
||||
SendNetworkEvent("swwmremoteliner."..onelinersnd,consoleplayer,onelinerlevel);
|
||||
}
|
||||
onelinertic = 0;
|
||||
onelinerspan = 0;
|
||||
}
|
||||
for ( int i=0; i<flashes.size(); i++ )
|
||||
{
|
||||
if ( flashes[i].tic >= gametic ) continue;
|
||||
flashes.Delete(i);
|
||||
i--;
|
||||
}
|
||||
// countable item scoring
|
||||
}
|
||||
|
||||
// countable item scoring
|
||||
private void ItemCountTrack()
|
||||
{
|
||||
for ( int i=0; i<MAXPLAYERS; i++ )
|
||||
{
|
||||
if ( !playeringame[i] ) continue;
|
||||
|
|
@ -1101,7 +1092,11 @@ Class SWWMHandler : EventHandler
|
|||
s.items++;
|
||||
}
|
||||
}
|
||||
// combat tracking
|
||||
}
|
||||
|
||||
// combat tracking
|
||||
private void CombatTrack()
|
||||
{
|
||||
// prune old entries
|
||||
for ( int i=0; i<combatactors.Size(); i++ )
|
||||
{
|
||||
|
|
@ -1159,6 +1154,56 @@ Class SWWMHandler : EventHandler
|
|||
}
|
||||
if ( enteredcombat && (!highesttic || (gametic > highesttic+700)) )
|
||||
lastcombat = AddOneliner("fightstart",1,10);
|
||||
}
|
||||
|
||||
private void OneHundredPercentCheck()
|
||||
{
|
||||
// ignore levels that have NOTHING
|
||||
if ( (level.total_secrets <= 0)
|
||||
&& (level.total_items <= 0)
|
||||
&& (level.total_monsters <= 0) ) return;
|
||||
if ( mapclear ) return;
|
||||
if ( (level.found_secrets < level.total_secrets)
|
||||
|| (level.found_items < level.total_items)
|
||||
|| (level.killed_monsters < level.total_monsters) ) return;
|
||||
mapclear = true;
|
||||
Console.Printf(StringTable.Localize("$SWWM_ALLCLEAR"),5000);
|
||||
S_StartSound("misc/wow",CHAN_VOICE,CHANF_UI|CHANF_NOPAUSE|CHANF_OVERLAP,1,ATTN_NONE);
|
||||
for ( int i=0; i<MAXPLAYERS; i++ )
|
||||
{
|
||||
if ( !playeringame[i] || !players[i].mo ) continue;
|
||||
let f = Actor.Spawn("PartyTime",players[i].mo.pos);
|
||||
f.bAMBUSH = true;
|
||||
SWWMCredits.Give(players[i],5000);
|
||||
SWWMScoreObj.Spawn(5000,players[i].mo.Vec3Offset(0,0,players[i].mo.Height/2));
|
||||
}
|
||||
}
|
||||
|
||||
override void WorldTick()
|
||||
{
|
||||
LangRefresh();
|
||||
QueueMaintenance();
|
||||
if ( !mutevoice ) mutevoice = CVar.GetCVar('swwm_mutevoice',players[consoleplayer]);
|
||||
if ( onelinertic && (onelinertic < gametic) )
|
||||
{
|
||||
if ( players[consoleplayer].health > 0 )
|
||||
{
|
||||
if ( onelinerlevel > mutevoice.GetInt() )
|
||||
players[consoleplayer].mo.A_StartSound(onelinersnd,CHAN_DEMOVOICE,CHANF_DEFAULT,1.,ATTN_NONE);
|
||||
SendNetworkEvent("swwmremoteliner."..onelinersnd,consoleplayer,onelinerlevel);
|
||||
}
|
||||
onelinertic = 0;
|
||||
onelinerspan = 0;
|
||||
}
|
||||
for ( int i=0; i<flashes.size(); i++ )
|
||||
{
|
||||
if ( flashes[i].tic >= gametic ) continue;
|
||||
flashes.Delete(i);
|
||||
i--;
|
||||
}
|
||||
ItemCountTrack();
|
||||
CombatTrack();
|
||||
OneHundredPercentCheck();
|
||||
if ( initialized ) return;
|
||||
// wait until bosses are active
|
||||
for ( int i=0; i<bossactors.Size(); i++ )
|
||||
|
|
|
|||
|
|
@ -457,7 +457,7 @@ Class SaltLight : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "SaltTail";
|
||||
Tag "SaltExpl,1";
|
||||
ReactionTime 30;
|
||||
Args 0,0,0,240;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ Class SparkArcLight : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "SparkArc";
|
||||
Tag "SparkExpl,2";
|
||||
ReactionTime 20;
|
||||
}
|
||||
}
|
||||
|
|
@ -30,7 +30,7 @@ Class SparkArcLightSmall : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "SparkArc";
|
||||
Tag "SparkExpl,2";
|
||||
ReactionTime 10;
|
||||
}
|
||||
}
|
||||
|
|
@ -38,7 +38,7 @@ Class SparkArcLightBig : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "SparkArc";
|
||||
Tag "SparkExpl,2";
|
||||
ReactionTime 40;
|
||||
}
|
||||
}
|
||||
|
|
@ -47,7 +47,7 @@ Class SparkBeamLight : PaletteLight
|
|||
{
|
||||
Default
|
||||
{
|
||||
Tag "SparkBeam";
|
||||
Tag "SparkExpl,1";
|
||||
ReactionTime 20;
|
||||
Args 0,0,0,300;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue