diff --git a/Locales/.~lock.locales.csv# b/Locales/.~lock.locales.csv# new file mode 100644 index 0000000..ad4b620 --- /dev/null +++ b/Locales/.~lock.locales.csv# @@ -0,0 +1 @@ +,darias,darias-laptop,19.10.2018 06:24,file:///home/darias/.config/libreoffice/4; \ No newline at end of file diff --git a/Locales/locales.csv b/Locales/locales.csv index 5dae7dd..833a077 100644 --- a/Locales/locales.csv +++ b/Locales/locales.csv @@ -1,46 +1,57 @@ -id,es,en -PLAY_GAME,Jugar,Play -SETTINGS,Ajustes,Settings -ABOUT,Info,About -SWITCH_SCREEN_CONTROLS,Usar botones táctiles,Use onsceen controls -SWITCH_RETRO_EFFECT,Emular pantalla retro,Simulate retro TV -SWITCH_MUSIC,Música,Music -SWITCH_SOUND,Sonidos,Sounds -BTTN_BACK,Volver,Back -TEXT_LICENSE,"El código fuente de este juego está licenciado bajo Geneal Public License versión 3. Todos los recursos gráficos, sonidos y música han sido creados por nosotos y están licenciados como Creative Commons Attribution-NonCommercial-ShareAlike 4.0. La tipografía utilizada es Press Start 2P creada por CodeMan38 (Open Font License) +id,es,en,de,EXPLANATIONS +PLAY_GAME,Jugar,Play,Starten, +SETTINGS,Ajustes,Settings,Optionen, +ABOUT,Info,About,Über, +SWITCH_SCREEN_CONTROLS,Usar botones táctiles,Use onscreen controls,Touch-Steuerung anzeigen, +SWITCH_RETRO_EFFECT,Simular pantalla retro,Simulate retro TV,Röhrenfernseher simulieren, +SWITCH_MUSIC,Música,Music,Musik, +SWITCH_SOUND,Sonidos,Sound,Ton, +SWITCH_BOTTOM_PARTICLES,Resaltar final del nivel,Show level end,, +BTTN_BACK,Volver,Back,Zurück, +TEXT_LICENSE,"El código fuente de este juego está licenciado bajo Geneal Public License versión 3. Todos los recursos gráficos, sonidos y música han sido creados por nosotros y están licenciados como Creative Commons Attribution-Non Commercial-Share Alike 4.0. La tipografía utilizada es Press Start 2P creada por CodeMan38 (Open Font License) Puedes obtener el código fuente y los recusos en gitlab.com/dariasteam/cows-revenge -Hecho en Godot Engine 2.1.5 (MIT)","This game's code is licensed as General Public License version 3. All the graphics, sounds and music resources were made by us and are published as Creative Commons Attribution-onCommercial-ShareAlike 4.0 International. Font is Press Start 2P by CodeMan38 (Open Font License) +Hecho en Godot Engine 2.1.5 (MIT)","This game's code is licensed as General Public License version 3. All the graphics, sounds and music resources were made by us and are published as Creative Commons Attribution-Non Commercial-Share Alike 4.0 International. Font is Press Start 2P by CodeMan38 (Open Font License) You can get the source code and assets at gitlab.com/dariasteam/cows-revenge Made with Godot Engine 2.1.5 (MIT) -" -CHAPTERS,Capítulos,Chapters -EP1,La escuela,The school -EP2,Gatear antes de caminar,Crawl before you walk -EP3,Independizándose,Independence -EP4,Una ubre y sus consecuencias,An udder and her consequences -EP5,Siempre fiel,Always faithful -EP6,Ucronía,Ucrony -EP7,Sístole y Diástole,Sistole and Diastole -EP8,Anfibios,Amphibious -EP9,R.U.B.E.N,R.U.B.E.N -UFO_JAIL_COUNTER,Vuelve cuando hayas salvado a todas las gallinas. Te quedan: ,Come back when you have rescued all the hens. Remaining: +","Der Code dieses Spiels ist unter der General Public License Version 3 lizensiert. Alle Grafiken, Klänge und Musikstücke wurden von uns erstellt und unter Creative Commons Attribution-Non Commercial-Share Alike 4.0 International veröffentlicht. Als Schriftart wird Press Start 2P von CodeMan38 unter der Open Font License verwendet. + +Der Quell-Code und alle weiteren Materialien stehen unter gitlab.com/dariasteam/cows-revenge zur Verfügung. + +Erstellt mit Godot Engine 2.1.5 (MIT)", +CHAPTERS,Capítulos,Chapters,Kapitel, +EP1,La escuela,The school,Die Schule, +EP2,Gatear antes de caminar,Crawl before you walk,"Erst krabbeln, dann laufen", +EP3,Independizándose,Independence,Unabhängigkeit, +EP4,Una ubre y sus consecuencias,An udder and her consequences,Ein Euter und seine Folgen, +EP5,Siempre fiel,Always faithful,Immer treu, +EP6,Ucronía,Uchronia,Uchronie, +EP7,Sístole y Diástole,Systole and Diastole,Systole und Diastole, +EP8,Anfibios,Amphibious,Amphibisch, +EP9,R.U.B.E.N,R.U.B.E.N,R.U.B.E.N, +UFO_JAIL_COUNTER,Vuelve cuando hayas salvado a todas las gallinas. Te quedan: ,Come back when you have rescued all the hens. Remaining:,Komm wieder wenn du alle Hennen gerettet hast. Verbleibend: , DANIEL_INFO,"dariasteam94@gmail.com -Mastodo.social/@darias +Mastodon.social/@darias - Código - Gráficos - Música - Animaciones","dariasteam94@gmail.com -Mastodo.social/@darias +mastodon.social/@darias - Code - Sprites - Music -- Animations" +- Animations","dariasteam94@gmail.com +Mastodon.social/@darias + +- Code +- Sprites +- Musik +- Animationen", YANARA_INFO,"needafreefall-@hotmail.com twitter.com/yanaronna instagam.com/yanaronna @@ -54,107 +65,114 @@ instagam.com/yanaronna - Sprites - Animations -- Character design" -BUY_HEART,Corazón,Heart -BUY_MILK,Leche,Milk -BTTN_LIFTOFF,Despegar,Liftoff -BTTN_RESUME,Reanudar,Resume -BTTN_RESET,Reiniciar,Reset -BTTN_EXIT,Salir,Exit -BTTN_RESET_LEVEL,Reiniciar nivel,Reset level -BTTN_MAIN_MENU,Ir al menú principal,Go to main menu -TUT_0,Este camino está bloqueado. Busca otra forma de desplazarte.,This way is blocked. Find another path. -TUT_1,Utiliza las teclas de dirección para moverte,Use arrows buttons to move -TUT_2,Pulsa A o el botón del resorte para saltar por encima de estos bloques.,Press A or the spring button to jump above these blocks -TUT_3,Puedes subir a las ramas de los árboles saltando desde abajo,You can climb to the branches jumping from below -TUT_4,Salta!,Jump! -TUT_5,Puedes volver a bajar pulsando abajo,You can go down by pessing down button -TUT_6,"Recoge cencerros para obtener mejoras. -",Collect cowbells to obtain upgrades -TUT_7,Bien hecho!,Well done! +- Character design","needafreefall-@hotmail.com +twitter.com/yanaronna +instagam.com/yanaronna + +- Sprites +- Animationen +- Charaktergestaltung", +BUY_HEART,Corazón,Heart,Herz, +BUY_MILK,Leche,Milk,Milch, +BTTN_LIFTOFF,Despegar,Liftoff,Abheben, +BTTN_RESUME,Reanudar,Resume,Fortfahren, +BTTN_RESET,Reiniciar,Reset,Zurücksetzen, +BTTN_EXIT,Salir,Exit,Verlassen, +BTTN_RESET_LEVEL,Reiniciar nivel,Reset level,Ebene zurücksetzen, +BTTN_MAIN_MENU,Ir al menú principal,Go to main menu,Zum Hauptmenü, +UFO_STORE,UFO Store,UFO Store,UFO Store, +TUT_0,Este camino está bloqueado. Busca otra forma de desplazarte.,This way is blocked. Find another path.,Dieser weg ist versperrt. Finde einen anderen., +TUT_1,Utiliza las teclas de dirección para moverte,Use arrows buttons to move,Laufe mit den Pfeiltasten, +TUT_2,Pulsa A o el botón del resorte para saltar por encima de estos bloques.,Press A or the space button to jump above these blocks,Drücke A oder die Leertaste um über diese Blöcke zu springen, +TUT_3,Puedes subir a las ramas de los árboles saltando desde abajo,You can climb to the branches jumping from below,Kletter auf Zweige indem du von unten hochspringst, +TUT_4,Salta!,Jump!,Spring!, +TUT_5,Puedes volver a bajar pulsando abajo,You can go down by pressing down button,Drücke nach unten um dich fallen zu lassen, +TUT_6,"Recoge cencerros para comprar mejoras. +",Collect cowbells and buy upgrades,Sammel Kuhglocken um dir Verbesserungen zu kaufen, +TUT_7,Bien hecho!,Well done!,Gut gemacht!, TUT_8,"Si recoges muchos cencerros en muy poco tiempo conseguirás bonificaciones! -",If you collect a lot of cowbells quickly you'll obtain bonifications +",If you collect a lot of cowbells quickly you'll gain a bonus,"Wenn du schnell viele Kuhglocken sammelst, erhältst du einen Bonus", TUT_9,"Puedes guardar los cencerros en la nave volviendo a ella para ser abducido en cualquier momento. -",You can store the cowbells in the space ship by going back to it to be abducted anytime +",You can store the cowbells in the space ship by going back to it to be abducted anytime,Du kannst Kuhglocken im UFO bunkern wenn du zurückkehrst und dich erneut entführen lässt, TUT_10,"A veces es más seguro no continuar avanzando si nada indica que el camino continúa -",Sometimes is safer to stop if you see the path finishing -TUT_11,"Esta vez era broma, pero no vuelvas a hacerlo!",It was joke -TUT_12,"¡Cuidado! Eso que ves es un carnicero, para aniquilarlo salta sobre su cabeza","Cuation! That is a butcher, jump on his head to annihilate him." +",Sometimes is safer to stop if you see the path finishing,"Manchmal ist es sicherer anzuhalten, wenn du merkst dass der Weg endet", +TUT_11,"Esta vez era broma, pero no vuelvas a hacerlo!",It was joke ,"War nur ein Scherz, aber pass nächstes Mal mehr auf", +TUT_12,"¡Cuidado! Eso que ves es un carnicero, para aniquilarlo salta sobre su cabeza","Caution! That is a butcher, jump on his head to defeat him.","Achtung! Dort ist ein Metzger, springe auf seinen Kopf um ihn zu besiegen", TUT_13,"Si has perdido vida puedes recuperarla recogiendo corazones -",You can restore your life taking hearts +",You can recover your life with hearts,Du kannst deine Leben mit Herzen widerherstellen, TUT_14,"Recoge manzanas para poder producir leche con la que atacar -",Collect apples to produce milk to attack +",Collect apples to produce milk and being able to attack,Sammel Äpfel um Milch zu produzieren and angreifen zu können, TUT_15,"Ataca con la tecla S o el botón de la ubre. Conmuta entre leche desnatada o semidesnatada con R o el botón en blanco. -",Press S or the udder button to attack. Change between skimmed and semi skimmed milk with R or the black button -TUT_16,"Menudo pasillo más largo, ¿eh?","Such a long corridor, uh?" -TUT_17,Rompe la jaula acercándote a ella para liberar a los animales,Break the cage by touching it to free the animals -TUT_18,Vuelve a la nave y pulsa la tecla arriba para ser abducido,Get back to the ship and press up to be abducted -TUT_19,En este juego NO respetamos las leyes de la física. Puedes saltar y en el aire modificar tu dirección.,In this game we DON'T obey the laws of physics. You can jump and change your direction in the air. -MAP3_TEXT0,A veces la maleza es tan densa que te impide ver. ¡Abre bien los ojos!,Sometimes the bushes is so dense don't allow you to see beyond. Keep your ayes open! -,, -,, -,, -CHICKEN_ADVICE_0,Vamos señores wuuu!,C’mon! Yijaa -CHICKEN_ADVICE_1,Los astronautas no existen,Nasa is a lie -CHICKEN_ADVICE_2,e=mc^2,e=mc^2 -CHICKEN_ADVICE_3,e_e,e_e -CHICKEN_ADVICE_4,Wiii,Wii -CHICKEN_ADVICE_5,cocococo,cluck cluck cluck -CHICKEN_ADVICE_6,Zzz...,Zzz… -CHICKEN_ADVICE_7,¡Ya era hora!,It was about time! -CHICKEN_ADVICE_8,:D,:D -CHICKEN_ADVICE_9,#NotAllMen,#NotAllMen -CHICKEN_ADVICE_10,Aléjate primo aléjate,Get out of this place -CHICKEN_ADVICE_11,Efectivamente,Effectively -CHICKEN_ADVICE_12,Porque quiero que sepas que tú para mi eres un amigo pa siempre,I want you to know that for me you are a true friend forever -CHICKEN_ADVICE_13,La gravedad no existe,The earth is flat -CHICKEN_ADVICE_14,La caida de la gran babilonia,Tim's your uncle -CHICKEN_ADVICE_15,FUAAAA!!,Zzz… -CHICKEN_ADVICE_16,Tú no me mandas,I don’t receive orders from you -CHICKEN_ADVICE_17,:C,:C -CHICKEN_ADVICE_18,No te pongas nervioso,Don’t get nervous -CHICKEN_ADVICE_19,¿Dónde está la contaminacion que yo la vea?,"Will, will Will will Will Will’s will?" -CHICKEN_ADVICE_20,seh seh seh seh,yep yep yep -CHICKEN_ADVICE_21,Tu crees que arcadio va a llevar el coche al para?, -CHICKEN_ADVICE_22,La psicología es útil,The psichology is useful -CHICKEN_ADVICE_23,C++ > Java,C++ > Java -CHICKEN_ADVICE_24,GNU Not Unix,GNU Not Unix -CHICKEN_ADVICE_25,Salchichas comodoro,Are you talkin to me? -CHICKEN_ADVICE_26,Ostia el workbook!,And I say HEEEEEEEYYYY Whats going on? -CHICKEN_ADVICE_27,Macarrones con tomatico ,ringdingringdingrinding BANANA PHONE! -CHICKEN_ADVICE_28,Yo soy tu padre,I am your father -CHICKEN_ADVICE_29,No quiero hablar contigo,I don’t wanna talk to you -CHICKEN_ADVICE_30,Déjame en paz,Let me alone -CHICKEN_ADVICE_31,...,… -CHICKEN_ADVICE_32,La oronja verde o amanita phalloides es el hongo más venenoso del mundo,Amanita phalloides is the most poisonous fungi in the world -CHICKEN_ADVICE_33,Poesía eres tú,You are poetry -CHICKEN_ADVICE_34,Illuminati confirmed,Illuminati confirmed -CHICKEN_ADVICE_35,Soy dueño de la canaca,I have to go to Walmart -CHICKEN_ADVICE_36,Yo soy un pollo cobarde,But will it blend? -CHICKEN_ADVICE_37,"¡Macrocéfalo, anfitrión, Rocambole, ectoplasma, filoxera, caníbal!",Billions of blue blistering boiled and barbecued barnacles! -CHICKEN_ADVICE_38,"Para pasar a binario solo debes dividir entre 2, el resultado son los restos ordenados al revés","To change a number to binary you only have to divide it by 2, the result are the remainings in inverse order" -CHICKEN_ADVICE_39,Si no estás conmigo eres mi enemigo,If you are not with me then you are my enemy -CHICKEN_ADVICE_40,Mírame a los ojos cuando te hablo,Look at my eyes when i'm talking to you -CHICKEN_ADVICE_41,¡Duro con ellos!,Go and get hard on them! -CHICKEN_ADVICE_42,"Rambo está en la trinchera, tiene una herida de bala en la pierna",I can’t feel my legs! -CHICKEN_ADVICE_43,Sosio aflójate un eurito ahí,Hey man give me a buck plz -CHICKEN_ADVICE_44,"Mira no más, esta cara, este cuerpo. Tú jamás tendrás este cuerpo","Oh dear look at my pretty face, isn't it fabulous?" -CHICKEN_ADVICE_45,¡Mi pueblo se muere por falta de conocimiento!,Checkmate atheist! -CHICKEN_ADVICE_46,"Y volé de él, y él voló allá por la arbolada",I believe I can flyyy -CHICKEN_ADVICE_47,Yo soy un pirata y tu mente es el mar y la psicología es mi barco,I’m a pirate and your mind is the sea and the psichology is my boat -CHICKEN_ADVICE_48,"Si recomiendas a la gente usar homeopatía, te sugiero amablemente que te vayas a hacer puñetas",If water has memory then homeopathy is full of shit -CHICKEN_ADVICE_49,"Si estás en un bosque y gritas y nadie te oye, ¿Por qué sigo suspendiendo Álgebra?","If you are in a forest a shout and no one hears you, why I keep failing Algebra?" -CHICKEN_ADVICE_50,Deja de xorfirar anda,Stop xorfiring now -CHICKEN_ADVICE_51,Para mí será un placer vencerte,For me it would be a pleasure to defeat you -CHICKEN_ADVICE_52,No me toques que yo no te he tocao,Don’t touch me cause I didn't touched you! -CHICKEN_ADVICE_53,"A que no adivinas quién fue primero, ¿Mi huevo o yo?","I bet you can answer this, which was first, my egg or me?" -CHICKEN_ADVICE_54,"¡Ay vida mía, soy taaan desdichada!",I am soo unfortunate! -CHICKEN_ADVICE_55,Ay quién tuviera la dicha que tiene el gallo,What does the fox say? -CHICKEN_ADVICE_56,"¡Tengo miedo, tengo miedo, tengo miego, tengo muchísimo miedo!",¡I’m so so so afraid! -CHICKEN_ADVICE_57,"¿Y qué hago mi niño, me lo cargo al hombro?",Look at my horse my horse is amazing -CHICKEN_ADVICE_58,Eres un mago Harry,You're a wizard harry -CHICKEN_ADVICE_59,Me hago pipí :/,I have to wee :/ -CHICKEN_ADVICE_60,Dime algo que no sepa ya,Tell me something I didn’t know -CHICKEN_ADVICE_61,No puedo ni confirmar ni desmentir que yo sea un pollo,I can neither confirm nor deny I’m a chicken -CHICKEN_ADVICE_62,Pienso luego existo,I think therefore I exist -CHICKEN_ADVICE_63,Pos coman pinocha,Yolooo +",Press S or the udder button to attack. Change between skimmed and semi-skimmed milk with R or the black button,Drücke S oder den Euter-Knopf um anzugreifen. Wechsel zwischen Magermilch und fettarmer Milch mit R oder dem schwarzen Knopf, +TUT_16,"Menudo pasillo más largo, ¿eh?","Such a long corridor, uh?","Was ein langer Gang, ne?", +TUT_17,Rompe la jaula acercándote a ella para liberar a los animales,Break the cage by touching it and free the animals,Breche den Käfig auf indem du ihn berührst und befreie die Tiere, +TUT_18,Vuelve a la nave y pulsa la tecla arriba para ser abducido,Get back to the ship and press up to be abducted,Gehe zurück ins UFO indem du Hoch drückst und dich entführen lässt, +TUT_19,En este juego NO respetamos las leyes de la física. Puedes saltar y en el aire modificar tu dirección.,In this game we DON'T obey the laws of physics. You can jump and change your direction in the air.,In diesem Spiel folgen wir den Gesetzen der Physik NICHT. Während du springst kannst du in der Luft die Richtung ändern, +MAP3_TEXT0,A veces la maleza es tan densa que te impide ver. ¡Abre bien los ojos!,Sometimes the bushes is so dense don't allow you to see beyond. Keep your eyes open!,"Manche Büsche sind so dicht, dass man nicht durch sie hindurchsehen kann. Halte die Augen offen!", +,,,, +,,,, +,,,, +CHICKEN_ADVICE_0,Vamos señores wuuu!,C’mon! Yeehaw,Auf geht’s! Vollgas!,LITERAL_TRANSLATION +CHICKEN_ADVICE_1,Los astronautas no existen,Nasa is a lie,Die Mondlandung war nachgedreht,MEME (flat eartch and nasa conspiracy) +CHICKEN_ADVICE_2,e=mc²,e=mc²,e=mc²,KEEP +CHICKEN_ADVICE_3,e_e,e_e,e_e,KEEP +CHICKEN_ADVICE_4,Wiii,Wiii,Wiii,"LITERAL_TRANSLATION (its like a sound, not the console)" +CHICKEN_ADVICE_5,cocococo,cluck cluck cluck cluck,gack gack gack gack,LITERAL_TRANSLATION (sound made by a hen) +CHICKEN_ADVICE_6,Zzz...,Zzz…,-,LITERAL_TRANSLATION (sound for sleep) +CHICKEN_ADVICE_7,¡Ya era hora!,It was about time!,Wurde aber auch Zeit!,LITERAL_TRANSLATION +CHICKEN_ADVICE_8,:D,:D,:D,KEEP +CHICKEN_ADVICE_9,#NotAllMen,#NotAllMen,#NotAllMen,KEEP +CHICKEN_ADVICE_10,Aléjate primo aléjate,Get out of this place,Verpiss dich von meinem Körper!,LITERAL_TRANSLATION +CHICKEN_ADVICE_11,Efectivamente,Indeed,Tatsächlich,LITERAL_TRANSLATION +CHICKEN_ADVICE_12,Porque quiero que sepas que tú para mi eres un amigo pa siempre,I want you to know that for me you are a true friend forever,"Du musst wissen, wirst ",SIMILAR_TRANSLATION (what a drunk person would say to his best friend) +CHICKEN_ADVICE_13,La gravedad no existe,The earth is flat,Die Erde ist eine Scheibe,MEME (flat eartch and nasa conspiracy) +CHICKEN_ADVICE_14,La caida de la gran babilonia,Tim's your uncle,,MEME (random) +CHICKEN_ADVICE_15,FUAAAA!!,Zzz…,,MEME (random) +CHICKEN_ADVICE_16,Tú no me mandas,I don’t receive orders from you,Ich lass mir von dir nichts sagen,LITERAL_TRANSLATION +CHICKEN_ADVICE_17,:C,:C,:C,KEEP +CHICKEN_ADVICE_18,No te pongas nervioso,Don’t get nervous,Nicht nervös werden,LITERAL_TRANSLATION +CHICKEN_ADVICE_19,¿Dónde está la contaminacion que yo la vea?,"Will, will Will will Will Will’s will?",,MEME (random) +CHICKEN_ADVICE_20,seh seh seh seh,yep yep yep,,LITERAL_TRANSLATION (say yes a lot of times) +CHICKEN_ADVICE_21,Tu crees que arcadio va a llevar el coche al para?,,,MEME (random) +CHICKEN_ADVICE_22,La psicología es útil,The psychology is useful,Die Psychologie ist nützlich,MEME (random) +CHICKEN_ADVICE_23,C++ > Java,C++ > Java,C++ > Java,KEEP +CHICKEN_ADVICE_24,GNU‘s Not Unix,GNU‘s Not Unix,GNU‘s Not Unix,KEEP +CHICKEN_ADVICE_25,Salchichas comodoro,Are you talkin‘ to me?,,MEME (random) +CHICKEN_ADVICE_26,Ostia el workbook!,And I say HEEEEEEEYYYY Whats going on?,,MEME (random) +CHICKEN_ADVICE_27,Macarrones con tomatico ,ring ring ring ring ring ring ring BANANA PHONE!,Ich esse gerne Sauerkraut und tanze gerne Polka,MEME (random) +CHICKEN_ADVICE_28,Yo soy tu padre,I am your father,Ich bin dein Vater,LITERAL_TRANSLATION +CHICKEN_ADVICE_29,No quiero hablar contigo,I don’t wanna talk to you,Ich will nicht mit dir reden,LITERAL_TRANSLATION +CHICKEN_ADVICE_30,Déjame en paz,Let me alone,Lass mich in Frieden,LITERAL_TRANSLATION +CHICKEN_ADVICE_31,...,…,…,KEEP +CHICKEN_ADVICE_32,La oronja verde o amanita phalloides es el hongo más venenoso del mundo,Amanita phalloides or death cap is the most poisonous fungi in the world,Der Grüne Knollenblätterpilz oder Grüne Gift-Wulstling ist der giftigste Pilz der Welt,LITERAL_TRANSLATION +CHICKEN_ADVICE_33,Poesía eres tú,You are poetry,,SIMILAR_TRANSLATION (the original is a sentence from a spanish poem) +CHICKEN_ADVICE_34,Illuminati confirmed,Illuminati confirmed,,KEEP +CHICKEN_ADVICE_35,Soy dueño de la canaca,I have to go to Walmart,,MEME (random) +CHICKEN_ADVICE_36,Yo soy un pollo cobarde,But will it blend?,,MEME (random) +CHICKEN_ADVICE_37,"¡Macrocéfalo, anfitrión, Rocambole, ectoplasma, filoxera, caníbal!",Billions of blue blistering boiled and barbecued barnacles!,,SIMILAR_TRANSLATION (some random insults of Captain Haddock from tintin series ) +CHICKEN_ADVICE_38,"Para pasar a binario solo debes dividir entre 2, el resultado son los restos ordenados al revés","To change a number to binary you only have to divide it by 2, the result are the remainings in inverse order",,LITERAL_TRANSLATION +CHICKEN_ADVICE_39,Si no estás conmigo eres mi enemigo,If you are not with me then you are my enemy,,LITERAL_TRANSLATION +CHICKEN_ADVICE_40,Mírame a los ojos cuando te hablo,Look at my eyes when i'm talking to you,,LITERAL_TRANSLATION +CHICKEN_ADVICE_41,¡Duro con ellos!,Go and get hard on them!,,LITERAL_TRANSLATION +CHICKEN_ADVICE_42,"Rambo está en la trinchera, tiene una herida de bala en la pierna",I can’t feel my legs!,,SIMILAR_TRANSLATION (a sentence from the rambo saga) +CHICKEN_ADVICE_43,Sosio aflójate un eurito ahí,Hey man give me a buck plz,,SIMILAR_TRANSLATION (the thing a yonki would say asking you money) +CHICKEN_ADVICE_44,"Mira no más, esta cara, este cuerpo. Tú jamás tendrás este cuerpo","Oh dear look at my pretty face, isn't it fabulous?",,SIMILAR_TRANSLATION (the thing a very egotistical person would say about how beautifull face or body has) +CHICKEN_ADVICE_45,¡Mi pueblo se muere por falta de conocimiento!,Checkmate atheist!,,MEME (random) +CHICKEN_ADVICE_46,"Y volé de él, y él voló allá por la arbolada",I believe I can flyyy,,MEME (random) +CHICKEN_ADVICE_47,Yo soy un pirata y tu mente es el mar y la psicología es mi barco,I’m a pirate and your mind is the sea and the psichology is my boat,,MEME (random) +CHICKEN_ADVICE_48,"Si recomiendas a la gente usar homeopatía, te sugiero amablemente que te vayas a hacer puñetas",If water has memory then homeopathy is full of shit,,SIMILAR_TRANSLATION (homeopathy is a serious scam and health problem) +CHICKEN_ADVICE_49,"Si estás en un bosque y gritas y nadie te oye, ¿Por qué sigo suspendiendo Álgebra?","If you are in a forest a shout and no one hears you, why I keep failing Algebra?",,LITERAL_TRANSLATION (the phylosophicall problem of forest and sound but with my own problems in it) +CHICKEN_ADVICE_50,Deja de xorfirar anda,Stop xorfiring now,,MEME (random) +CHICKEN_ADVICE_51,Para mí será un placer vencerte,For me it would be a pleasure to defeat you,,SIMILAR_TRANSLATION (the thing a classic bad guy from a comic would say to the hero) +CHICKEN_ADVICE_52,No me toques que yo no te he tocao,Don’t touch me cause I didn't touched you!,,LITERAL_TRANSLATION +CHICKEN_ADVICE_53,"A que no adivinas quién fue primero, ¿Mi huevo o yo?","I bet you can answer this, which was first, my egg or me?",,LITERAL_TRANSLATION (another phylosophicall question but tweaked to be said by a hen) +CHICKEN_ADVICE_54,"¡Ay vida mía, soy taaan desdichada!",I am soo unfortunate!,,LITERAL_TRANSLATION +CHICKEN_ADVICE_55,Ay quién tuviera la dicha que tiene el gallo,What does the fox say?,,MEME (veguely related with hens if possible) +CHICKEN_ADVICE_56,"¡Tengo miedo, tengo miedo, tengo miego, tengo muchísimo miedo!",I’m so so so afraid!,,LITERAL_TRANSLATION +CHICKEN_ADVICE_57,"¿Y qué hago mi niño, me lo cargo al hombro?",Look at my horse my horse is amazing,,MEME (random) +CHICKEN_ADVICE_58,Eres un mago Harry,You're a wizard harry,Du bist ein Zauberer Harry,LITERAL_TRANSLATION +CHICKEN_ADVICE_59,Me hago pipí :/,I have to wee :/,Ich muss Pipi machen :/,LITERAL_TRANSLATION +CHICKEN_ADVICE_60,Dime algo que no sepa ya,Tell me something I didn’t know,,LITERAL_TRANSLATION +CHICKEN_ADVICE_61,No puedo ni confirmar ni desmentir que yo sea un pollo,I can neither confirm nor deny I’m a chicken,,LITERAL_TRANSLATION (joke with the CIA first tweet) +CHICKEN_ADVICE_62,Pienso luego existo,I think therefore I exist,,LITERAL_TRANSLATION (Cogito ergo sum) +CHICKEN_ADVICE_63,Pos coman pinocha,Yolooo,,MEME (random) diff --git a/Locales/locales.de.xl b/Locales/locales.de.xl new file mode 100644 index 0000000..674ecdf Binary files /dev/null and b/Locales/locales.de.xl differ diff --git a/Locales/locales.en.xl b/Locales/locales.en.xl index 48642b5..d2411dd 100644 Binary files a/Locales/locales.en.xl and b/Locales/locales.en.xl differ diff --git a/Locales/locales.es.xl b/Locales/locales.es.xl index e653492..a4cb38a 100644 Binary files a/Locales/locales.es.xl and b/Locales/locales.es.xl differ diff --git a/Makefile b/Makefile index 7166c4a..b76d445 100644 --- a/Makefile +++ b/Makefile @@ -1,22 +1,25 @@ prefix ?= usr/local DESTDIR := ICONSIZES := 64 128 +BIT := $(shell getconf LONG_BIT) define \n endef -build/cowsrevenge: $(wildcard "Scenes/*/*") $(wildcard "Locales/*") $(wildcard "Sound/*") $(wildcard "Music/*") $(wildcard "Sprites/*") $(wildcard "Sprites/*/*") $(wildcard "Fonts/*") $(wildcard "Fonts/*/*") export.cfg engine.cfg d.tscn build/godot/bin/godot_server.server.opt.tools.64 - cd build/godot; scons platform=x11 tools=no target=release bits=`getconf LONG_BIT` use_llvm=yes -j `nproc` - mkdir -p build/templates/ - cp build/godot/bin/godot.x11*.llvm build/templates/linux_x11_`getconf LONG_BIT`_release - build/godot/bin/godot_server.server.opt.tools.64 -export "Linux X11" build/cowsrevenge +build/cowsrevenge: $(wildcard "Scenes/*/*") $(wildcard "Locales/*") $(wildcard "Sound/*") $(wildcard "Music/*") $(wildcard "Sprites/*") $(wildcard "Sprites/*/*") $(wildcard "Fonts/*") $(wildcard "Fonts/*/*") export.cfg engine.cfg d.tscn build/godot/bin/godot_server.server.opt.tools.$(BIT) + # put into self contained mode + touch build/godot/bin/._sc_ + cd build/godot; scons -j `nproc` platform=x11 target=release bits=$(BIT) use_llvm=yes tools=no + mkdir -p build/godot/bin/editor_data/templates/ + cp build/godot/bin/godot.x11*.llvm build/godot/bin/editor_data/templates/linux_x11_$(BIT)_release + build/godot/bin/godot_server.server.opt.tools.$(BIT) -export "Linux X11" build/cowsrevenge #build engine -build/godot/bin/godot_server.server.opt.tools.64: +build/godot/bin/godot_server.server.opt.tools.$(BIT): mkdir -p build cd build; git clone -b 2.1 --single-branch https://github.com/godotengine/godot || true - cd build/godot; scons -j `nproc` platform=server target=release_debug use_llvm=yes unix_global_settings_path=".." + cd build/godot; scons -j `nproc` platform=server target=release_debug bits=$(BIT) use_llvm=yes unix_global_settings_path=".." .PHONY: install install: build/cowsrevenge $(wildcard "linux_build/*") diff --git a/README.md b/README.md index 4535430..4c7aab0 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,10 @@ -# Cow's Revenge ![]() [![Download](Misc/itch.io_badge.png)](https://pipoypipagames.itch.io/cows-revenge) +# Cow's Revenge +![]()[![Download](Misc/itch.io_badge.png)](https://pipoypipagames.itch.io/cows-revenge) +Download on Flathub + + + > You are a cow abducted and genetically improved by aliens which now have the opportunity to rebel against livestock industry by freeing the encaged hens and killing butchers. You used to be a regular cow raised as a dairy cow, but you ain't that anymore. You have become better. You are... THE COWEST. @@ -16,7 +22,7 @@ Code licensed as [GPL v3](LICENSE_CODE), assets as [Creative Commons Attribution ## Authors - **Daniel Darias Sánchez** [mastodon](https://mastodon.social/@darias), [email](dariasteam94@gmail.com) - code, music, sprites, aniamtions + code, music, sprites, animations - **Yanara Aristiguieta** [instagram](https://www.instagram.com/yanaronna/), [twitter](twitter.com/yanaronna), [email](needafreefall-@hotmail.com) sprites, character design, animations diff --git a/Scenes/ERASE_ME.tscn b/Scenes/ERASE_ME.tscn deleted file mode 100644 index 03aacde..0000000 --- a/Scenes/ERASE_ME.tscn +++ /dev/null @@ -1,15 +0,0 @@ -[gd_scene load_steps=2 format=1] - -[ext_resource path="res://Scenes/Events/chain.tscn" type="PackedScene" id=1] - -[node name="Node2D" type="Node2D"] - -transform/scale = Vector2( 2, 2 ) - -[node name="Node2D" parent="." instance=ExtResource( 1 )] - -transform/pos = Vector2( 482.349, 310.512 ) -START = null -END = null - - diff --git a/Scenes/Effects/retro_shader.tres b/Scenes/Effects/retro_shader.tres new file mode 100644 index 0000000..bfdef7d --- /dev/null +++ b/Scenes/Effects/retro_shader.tres @@ -0,0 +1,36 @@ +[gd_resource type="CanvasItemMaterial" load_steps=2 format=1] + +[sub_resource type="CanvasItemShader" id=1] + +_code = { +"fragment": "uniform float lines_distance = 4.0; +uniform float pixel_size = 2.0; +uniform float size_screen = 600; +uniform float scanline_alpha = 0.9; +uniform float lines_velocity = 30.0; + +float line_row = floor((SCREEN_UV.y * size_screen/pixel_size) + mod(TIME*lines_velocity, lines_distance)); + +float n = 1.0 - ceil((mod(line_row,lines_distance)/lines_distance)); + +vec4 c = vec4(texscreen(SCREEN_UV),1); +c = c - n*c*(1 - scanline_alpha); +c.a = 1; +COLOR = c;", +"fragment_ofs": 0, +"light": "", +"light_ofs": 0, +"vertex": "", +"vertex_ofs": 0 +} + +[resource] + +shader/shader = SubResource( 1 ) +shader/shading_mode = 0 +shader_param/lines_distance = 4.0 +shader_param/pixel_size = 2.0 +shader_param/size_screen = 600.0 +shader_param/scanline_alpha = 0.9 +shader_param/lines_velocity = 30.0 + diff --git a/Scenes/Events/BottomLevelParticles.tscn b/Scenes/Events/BottomLevelParticles.tscn new file mode 100644 index 0000000..40c0604 --- /dev/null +++ b/Scenes/Events/BottomLevelParticles.tscn @@ -0,0 +1,41 @@ +[gd_scene load_steps=3 format=1] + +[ext_resource path="res://Sprites/Effects/leche.png" type="Texture" id=1] + +[sub_resource type="ColorRamp" id=6] + +offsets = FloatArray( 0, 0.995074 ) +colors = ColorArray( 0, 0, 0, 0.463843, 0, 0, 0, 0 ) + +[node name="BottomLevelParticles" type="Particles2D"] + +visibility/opacity = 0.7 +transform/pos = Vector2( 623.831, 732.836 ) +config/amount = 100 +config/lifetime = 2.0 +config/process_mode = 1 +config/half_extents = Vector2( 700, 0 ) +config/texture = ExtResource( 1 ) +params/direction = 180.0 +params/spread = 10.0 +params/linear_velocity = 150.0 +params/spin_velocity = 0.0 +params/orbit_velocity = 0.0 +params/gravity_direction = 0.0 +params/gravity_strength = 0.0 +params/radial_accel = 0.0 +params/tangential_accel = 0.0 +params/damping = 0.0 +params/initial_angle = 0.0 +params/initial_size = 5.0 +params/final_size = 0.0 +params/hue_variation = 10.0 +params/anim_speed_scale = 1.0 +params/anim_initial_pos = 0.0 +randomness/direction = 10.0 +randomness/spread = 10.0 +randomness/linear_velocity = 0.1 +color/color = Color( 0, 0, 0, 1 ) +color/color_ramp = SubResource( 6 ) + + diff --git a/Scenes/Events/death_line.gd b/Scenes/Events/death_line.gd index 2bf1bc3..df41510 100644 --- a/Scenes/Events/death_line.gd +++ b/Scenes/Events/death_line.gd @@ -1,7 +1,17 @@ extends Area2D +onready var particles = get_tree().get_nodes_in_group("bottom_level_particles")[0] func _on_DeathLine_body_enter( body ): if(body.is_in_group("player")): body.on_receive_damage(1000) elif(body.is_in_group("enemy")): - body.queue_free() + body.queue_free() + + +func _on_death_line_area_enter( area ): + if(area.is_in_group("bottom_level_detector") and global.bottom_particles): + particles.set_emitting(true) + +func _on_death_line_area_exit( area ): + if(area.is_in_group("bottom_level_detector") and global.bottom_particles): + particles.set_emitting(false) diff --git a/Scenes/Events/death_line.tscn b/Scenes/Events/death_line.tscn index 31133f0..bdaa9fc 100644 --- a/Scenes/Events/death_line.tscn +++ b/Scenes/Events/death_line.tscn @@ -33,6 +33,10 @@ shape = SubResource( 1 ) trigger = false _update_shape_index = 0 +[connection signal="area_enter" from="." to="." method="_on_death_line_area_enter"] + +[connection signal="area_exit" from="." to="." method="_on_death_line_area_exit"] + [connection signal="body_enter" from="." to="." method="_on_DeathLine_body_enter"] diff --git a/Scenes/Events/player.tscn b/Scenes/Events/player.tscn index e76baef..b7ea16e 100644 --- a/Scenes/Events/player.tscn +++ b/Scenes/Events/player.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=12 format=1] +[gd_scene load_steps=13 format=1] [ext_resource path="res://Scenes/Events/player.gd" type="Script" id=1] [ext_resource path="res://Scenes/Events/shooter.gd" type="Script" id=2] @@ -9,19 +9,18 @@ [ext_resource path="res://Sound/player_jump.ogg" type="AudioStream" id=7] [ext_resource path="res://Scenes/Events/map_light.tscn" type="PackedScene" id=8] -[sub_resource type="ConvexPolygonShape2D" id=1] +[sub_resource type="ConvexPolygonShape2D" id=5] custom_solver_bias = 0.0 points = Vector2Array( -13.26, -5.39603, -9.45393, -8.08105, 6.94148, -8.08105, 11.3331, -5.21703, 11.3331, 4.27004, 9.28368, 8.56607, 1.37875, 13.0411, -3.59843, 13.0411, -11.7961, 8.38707, -13.26, 4.44904 ) -[sub_resource type="ConvexPolygonShape2D" id=2] +[sub_resource type="ConvexPolygonShape2D" id=6] custom_solver_bias = 0.0 points = Vector2Array( -13.26, -5.39603, -9.45393, -8.08105, 6.94148, -8.08105, 11.3331, -5.21703, 11.3331, 4.27004, 9.28368, 8.56607, 1.37875, 13.0411, -3.59843, 13.0411, -11.7961, 8.38707, -13.26, 4.44904 ) -[sub_resource type="Animation" id=3] +[sub_resource type="Animation" id=4] -resource/name = "idle" length = 0.6 loop = true step = 0.1 @@ -36,16 +35,21 @@ tracks/0/keys = { "values": [ 0, 1, 2, 3, 2, 1 ] } +[sub_resource type="RectangleShape2D" id=3] + +custom_solver_bias = 0.0 +extents = Vector2( 10, 34.3036 ) + [node name="Player" type="KinematicBody2D" groups=[ "player", ]] transform/scale = Vector2( 1.8, 1.8 ) input/pickable = false -shapes/0/shape = SubResource( 1 ) +shapes/0/shape = SubResource( 5 ) shapes/0/transform = Matrix32( 1.89755, 0, 0, 3.10364, 2.93931, -4.91934 ) shapes/0/trigger = false -shapes/1/shape = SubResource( 2 ) +shapes/1/shape = SubResource( 6 ) shapes/1/transform = Matrix32( 1.89755, 0, 0, 3.10364, 2.93931, -4.91934 ) shapes/1/trigger = true collision/layers = 1057 @@ -110,7 +114,7 @@ region_rect = Rect2( 0, 0, 96, 96 ) playback/process_mode = 0 playback/default_blend_time = 0.2 root/root = NodePath("..") -anims/idle = SubResource( 3 ) +anims/idle = SubResource( 4 ) anims/walk = ExtResource( 5 ) playback/active = true playback/speed = 1.0 @@ -169,6 +173,30 @@ stream/buffering_ms = 500 [node name="Light2D" parent="." instance=ExtResource( 8 )] +[node name="BottomLevelDetector" type="Area2D" parent="." groups=[ +"bottom_level_detector", +]] + +transform/pos = Vector2( -0.905016, 94.1209 ) +input/pickable = true +shapes/0/shape = SubResource( 3 ) +shapes/0/transform = Matrix32( 1, 0, 0, 1, 3.16754, -0.452507 ) +shapes/0/trigger = true +gravity_vec = Vector2( 0, 1 ) +gravity = 98.0 +linear_damp = 0.1 +angular_damp = 1.0 +monitoring = false +collision/layers = 2 +collision/mask = 2 + +[node name="CollisionShape" type="CollisionShape2D" parent="BottomLevelDetector"] + +transform/pos = Vector2( 3.16754, -0.452507 ) +shape = SubResource( 3 ) +trigger = true +_update_shape_index = 0 + [connection signal="looking_left" from="." to="shooter" method="_on_KinematicBody2D_looking_left"] [connection signal="looking_right" from="." to="shooter" method="_on_KinematicBody2D_looking_right"] diff --git a/Scenes/Maps/map_1.tscn b/Scenes/Maps/map_1.tscn index b3ad932..605c420 100644 --- a/Scenes/Maps/map_1.tscn +++ b/Scenes/Maps/map_1.tscn @@ -1567,8 +1567,6 @@ script/script = ExtResource( 13 ) [node name="Cages" type="Node2D" parent="."] -editor/display_folded = true - [node name="jail" parent="Cages" instance=ExtResource( 14 )] transform/pos = Vector2( -1250, -2410 ) diff --git a/Scenes/Menu/HUD.tscn b/Scenes/Menu/HUD.tscn index e6d0c2c..400fe78 100644 --- a/Scenes/Menu/HUD.tscn +++ b/Scenes/Menu/HUD.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=35 format=1] +[gd_scene load_steps=38 format=1] [ext_resource path="res://Scenes/Menu/level_selector.gd" type="Script" id=1] [ext_resource path="res://Scenes/Maps/map_0.tscn" type="PackedScene" id=2] @@ -10,27 +10,34 @@ [ext_resource path="res://Scenes/Maps/map_6.tscn" type="PackedScene" id=8] [ext_resource path="res://Scenes/Maps/map_7.tscn" type="PackedScene" id=9] [ext_resource path="res://Scenes/Maps/map_8.tscn" type="PackedScene" id=10] -[ext_resource path="res://Scenes/Menu/life_hud.gd" type="Script" id=11] -[ext_resource path="res://Scenes/Menu/buttons_hud.gd" type="Script" id=12] -[ext_resource path="res://Sprites/GUI/Buttons/bttn_arrow.png" type="Texture" id=13] -[ext_resource path="res://Sprites/GUI/Buttons/bttn_jump.png" type="Texture" id=14] -[ext_resource path="res://Sprites/GUI/Buttons/bttn.png" type="Texture" id=15] -[ext_resource path="res://Sprites/GUI/Buttons/btn_shoot.png" type="Texture" id=16] -[ext_resource path="res://Scenes/Menu/milk_botte_hud.gd" type="Script" id=17] -[ext_resource path="res://Sprites/GUI/HUD/milbar_outter_2.png" type="Texture" id=18] -[ext_resource path="res://Sprites/GUI/HUD/milkbar_outter_3.png" type="Texture" id=19] -[ext_resource path="res://Sprites/GUI/HUD/milkbar_outter_1.png" type="Texture" id=20] -[ext_resource path="res://Scenes/Menu/cowbells_hud.gd" type="Script" id=21] -[ext_resource path="res://Fonts/pixelated_title.fnt" type="BitmapFont" id=22] -[ext_resource path="res://Sprites/Charasets/cowbell.png" type="Texture" id=23] -[ext_resource path="res://Scenes/Events/cowbell_animation_one_shot.tres" type="Animation" id=24] -[ext_resource path="res://Scenes/Events/cowbell_animations.tres" type="Animation" id=25] -[ext_resource path="res://Scenes/Menu/button_back.tscn" type="PackedScene" id=26] -[ext_resource path="res://Scenes/Menu/in_game_menu.tscn" type="PackedScene" id=27] -[ext_resource path="res://Scenes/Menu/ufo_store.tscn" type="PackedScene" id=28] -[ext_resource path="res://Scenes/Effects/scan_lines.tscn" type="PackedScene" id=29] +[ext_resource path="res://Sprites/Effects/bottom_level_particles.png" type="Texture" id=11] +[ext_resource path="res://Scenes/Menu/life_hud.gd" type="Script" id=12] +[ext_resource path="res://Scenes/Menu/buttons_hud.gd" type="Script" id=13] +[ext_resource path="res://Sprites/GUI/Buttons/bttn_arrow.png" type="Texture" id=14] +[ext_resource path="res://Sprites/GUI/Buttons/bttn_jump.png" type="Texture" id=15] +[ext_resource path="res://Sprites/GUI/Buttons/bttn.png" type="Texture" id=16] +[ext_resource path="res://Sprites/GUI/Buttons/btn_shoot.png" type="Texture" id=17] +[ext_resource path="res://Scenes/Menu/milk_botte_hud.gd" type="Script" id=18] +[ext_resource path="res://Sprites/GUI/HUD/milbar_outter_2.png" type="Texture" id=19] +[ext_resource path="res://Sprites/GUI/HUD/milkbar_outter_3.png" type="Texture" id=20] +[ext_resource path="res://Sprites/GUI/HUD/milkbar_outter_1.png" type="Texture" id=21] +[ext_resource path="res://Scenes/Menu/cowbells_hud.gd" type="Script" id=22] +[ext_resource path="res://Fonts/pixelated_title.fnt" type="BitmapFont" id=23] +[ext_resource path="res://Sprites/Charasets/cowbell.png" type="Texture" id=24] +[ext_resource path="res://Scenes/Events/cowbell_animation_one_shot.tres" type="Animation" id=25] +[ext_resource path="res://Scenes/Events/cowbell_animations.tres" type="Animation" id=26] +[ext_resource path="res://Scenes/Menu/button_back.tscn" type="PackedScene" id=27] +[ext_resource path="res://Scenes/Menu/in_game_menu.tscn" type="PackedScene" id=28] +[ext_resource path="res://Scenes/Menu/ufo_store.tscn" type="PackedScene" id=29] +[ext_resource path="res://Scenes/Effects/retro_shader.tres" type="CanvasItemMaterial" id=30] +[ext_resource path="res://Sprites/Effects/white.png" type="Texture" id=31] -[sub_resource type="Environment" id=1] +[sub_resource type="ColorRamp" id=1] + +offsets = FloatArray( 0, 1 ) +colors = ColorArray( 1, 1, 1, 1, 1, 1, 1, 0 ) + +[sub_resource type="Environment" id=2] ambient_light/enabled = false ambient_light/color = Color( 0, 0, 0, 1 ) @@ -74,15 +81,15 @@ bcs/contrast = 1.0 bcs/saturation = 1.0 srgb/enabled = false -[sub_resource type="World" id=2] +[sub_resource type="World" id=3] -environment = SubResource( 1 ) +environment = SubResource( 2 ) -[sub_resource type="CanvasItemMaterial" id=3] +[sub_resource type="CanvasItemMaterial" id=4] shader/shading_mode = 0 -[sub_resource type="GDScript" id=4] +[sub_resource type="GDScript" id=5] script/source = "extends Button @@ -91,7 +98,7 @@ func _on_Back_pressed(): get_node(\"in_game_menu\").show() " -[sub_resource type="GDScript" id=5] +[sub_resource type="GDScript" id=6] script/source = "extends TextureFrame @@ -122,11 +129,42 @@ margin/bottom = 768.0 script/script = ExtResource( 1 ) levels = [ ExtResource( 2 ), ExtResource( 3 ), ExtResource( 4 ), ExtResource( 5 ), ExtResource( 6 ), ExtResource( 7 ), ExtResource( 8 ), ExtResource( 9 ), ExtResource( 10 ) ] +[node name="BotomLevelParticles" type="Particles2D" parent="Control" groups=[ +"bottom_level_particles", +]] + +visibility/opacity = 0.6 +transform/pos = Vector2( 635, 708.804 ) +transform/scale = Vector2( 25, 0.3 ) +config/amount = 2 +config/lifetime = 0.5 +config/emitting = false +config/process_mode = 1 +config/half_extents = Vector2( 1, 0 ) +config/texture = ExtResource( 11 ) +params/direction = 180.0 +params/spread = 0.0 +params/linear_velocity = 500.0 +params/spin_velocity = 0.0 +params/orbit_velocity = 0.0 +params/gravity_direction = 0.0 +params/gravity_strength = 0.0 +params/radial_accel = 0.0 +params/tangential_accel = 0.0 +params/damping = 0.0 +params/initial_angle = 0.0 +params/initial_size = 6.0 +params/final_size = 6.0 +params/hue_variation = 0.0 +params/anim_speed_scale = 0.0 +params/anim_initial_pos = 0.0 +color/color_ramp = SubResource( 1 ) + [node name="Viewport" type="Viewport" parent="Control"] rect = Rect2( 0, 0, 1280, 768 ) own_world = false -world = SubResource( 2 ) +world = SubResource( 3 ) transparent_bg = false render_target/enabled = false render_target/v_flip = false @@ -144,7 +182,7 @@ gui/disable_input = false ]] transform/pos = Vector2( 120, 58 ) -script/script = ExtResource( 11 ) +script/script = ExtResource( 12 ) heart_inter_distance = 64 initial_heart_pos = Vector2( 32, 0 ) @@ -154,7 +192,7 @@ initial_heart_pos = Vector2( 32, 0 ) ]] editor/display_folded = true -script/script = ExtResource( 12 ) +script/script = ExtResource( 13 ) [node name="Bttn_U" type="TouchScreenButton" parent="Control/Buttons" groups=[ "onscreen_controls", @@ -163,7 +201,7 @@ script/script = ExtResource( 12 ) visibility/opacity = 0.9 transform/pos = Vector2( 160, 320 ) transform/scale = Vector2( 0.474074, 0.481203 ) -normal = ExtResource( 13 ) +normal = ExtResource( 14 ) pressed = null bitmask = null shape = null @@ -180,7 +218,7 @@ visibility_mode = 0 visibility/opacity = 0.8 transform/pos = Vector2( 1088, 576 ) transform/scale = Vector2( 0.474074, 0.481203 ) -normal = ExtResource( 14 ) +normal = ExtResource( 15 ) pressed = null bitmask = null shape = null @@ -197,7 +235,7 @@ visibility_mode = 0 visibility/opacity = 0.8 transform/pos = Vector2( 1088, 384 ) transform/scale = Vector2( 0.474074, 0.481203 ) -normal = ExtResource( 15 ) +normal = ExtResource( 16 ) pressed = null bitmask = null shape = null @@ -214,7 +252,7 @@ visibility_mode = 0 visibility/opacity = 0.9 transform/pos = Vector2( 896, 576 ) transform/scale = Vector2( 0.474074, 0.481203 ) -normal = ExtResource( 16 ) +normal = ExtResource( 17 ) pressed = null bitmask = null shape = null @@ -232,7 +270,7 @@ visibility/opacity = 0.9 transform/pos = Vector2( 288, 704 ) transform/rot = 180.0 transform/scale = Vector2( 0.474074, 0.481203 ) -normal = ExtResource( 13 ) +normal = ExtResource( 14 ) pressed = null bitmask = null shape = null @@ -250,7 +288,7 @@ visibility/opacity = 0.9 transform/pos = Vector2( 416, 448 ) transform/rot = -90.0 transform/scale = Vector2( 0.474074, 0.481203 ) -normal = ExtResource( 13 ) +normal = ExtResource( 14 ) pressed = null bitmask = null shape = null @@ -268,7 +306,7 @@ visibility/opacity = 0.9 transform/pos = Vector2( 32, 576 ) transform/rot = 90.0 transform/scale = Vector2( 0.474074, 0.481203 ) -normal = ExtResource( 13 ) +normal = ExtResource( 14 ) pressed = null bitmask = null shape = null @@ -284,13 +322,13 @@ visibility_mode = 0 transform/pos = Vector2( 1205, 73 ) transform/scale = Vector2( 2, 2 ) -script/script = ExtResource( 17 ) +script/script = ExtResource( 18 ) each_bottle_value = 33.0 bottle_inter_distance = 32 initial_bottle_pos = Vector2( -10, -20 ) -sprite1 = ExtResource( 18 ) -sprite2 = ExtResource( 19 ) -sprite3 = ExtResource( 20 ) +sprite1 = ExtResource( 19 ) +sprite2 = ExtResource( 20 ) +sprite3 = ExtResource( 21 ) [node name="Cowbells" type="Node2D" parent="Control" groups=[ "cowbell_hud", @@ -298,7 +336,7 @@ sprite3 = ExtResource( 20 ) editor/display_folded = true transform/pos = Vector2( 3, 21 ) -script/script = ExtResource( 21 ) +script/script = ExtResource( 22 ) [node name="Counter" type="RichTextLabel" parent="Control/Cowbells"] @@ -310,7 +348,7 @@ margin/left = 630.0 margin/top = 30.0 margin/right = 876.0 margin/bottom = 81.0 -custom_fonts/normal_font = ExtResource( 22 ) +custom_fonts/normal_font = ExtResource( 23 ) bbcode/enabled = true bbcode/bbcode = "0" visible_characters = -1 @@ -336,10 +374,10 @@ autostart = false [node name="Sprite" type="Sprite" parent="Control/Cowbells"] -material/material = SubResource( 3 ) +material/material = SubResource( 4 ) transform/pos = Vector2( 586, 45 ) transform/scale = Vector2( 3, 3 ) -texture = ExtResource( 23 ) +texture = ExtResource( 24 ) hframes = 3 [node name="Animation" type="AnimationPlayer" parent="Control/Cowbells/Sprite"] @@ -347,23 +385,23 @@ hframes = 3 playback/process_mode = 0 playback/default_blend_time = 0.0 root/root = NodePath("..") -anims/cowbell_animation_one_shot = ExtResource( 24 ) -anims/cowbell_animations = ExtResource( 25 ) +anims/cowbell_animation_one_shot = ExtResource( 25 ) +anims/cowbell_animations = ExtResource( 26 ) playback/active = false playback/speed = 2.0 blend_times = [ ] autoplay = "" -[node name="Back" parent="Control" instance=ExtResource( 26 )] +[node name="Back" parent="Control" instance=ExtResource( 27 )] margin/left = 36.0 margin/top = 34.0 margin/right = 97.0 margin/bottom = 89.0 text = "<" -script/script = SubResource( 4 ) +script/script = SubResource( 5 ) -[node name="in_game_menu" parent="Control/Back" instance=ExtResource( 27 )] +[node name="in_game_menu" parent="Control/Back" instance=ExtResource( 28 )] visibility/visible = false margin/left = -36.0 @@ -371,11 +409,26 @@ margin/top = -34.0 margin/right = 1244.0 margin/bottom = 686.0 -[node name="Control" parent="Control" instance=ExtResource( 28 )] +[node name="Control" parent="Control" instance=ExtResource( 29 )] -[node name="ScanLine" parent="." instance=ExtResource( 29 )] +[node name="ScanLine" type="TextureFrame" parent="."] -script/script = SubResource( 5 ) +visibility/opacity = 0.0 +visibility/self_opacity = 0.0 +material/material = ExtResource( 30 ) +focus/ignore_mouse = false +focus/stop_mouse = false +size_flags/horizontal = 2 +size_flags/vertical = 2 +margin/left = 0.0 +margin/top = 0.0 +margin/right = 1280.0 +margin/bottom = 718.0 +texture = ExtResource( 31 ) +modulate = Color( 1, 1, 1, 0 ) +expand = true +stretch_mode = 0 +script/script = SubResource( 6 ) [connection signal="pressed" from="Control/Buttons/Bttn_U" to="Control/Buttons" method="_on_Bttn_U_pressed"] diff --git a/Scenes/Menu/back_button.gd b/Scenes/Menu/back_button.gd index 3ea10f3..08085bf 100644 --- a/Scenes/Menu/back_button.gd +++ b/Scenes/Menu/back_button.gd @@ -5,8 +5,9 @@ export(PackedScene) var scene func _ready(): set_process_input(true) -func _on_Button_pressed(): - get_tree().set_pause(false) +func _on_Button_pressed(): + global.save_game() + get_tree().set_pause(false) get_tree().change_scene_to(scene) func _input(ev): diff --git a/Scenes/Menu/global.gd b/Scenes/Menu/global.gd index de64cd4..ada92f1 100644 --- a/Scenes/Menu/global.gd +++ b/Scenes/Menu/global.gd @@ -15,6 +15,7 @@ var can_show_in_game_menu = true var retro_effect = true var music = true var sound = true +var bottom_particles = false var level = 0 var unlocked_levels = 1 @@ -81,7 +82,8 @@ func save_game(): retro_effect=retro_effect, # NEW STUFF sound=sound, - music=music + music=music, + bottom_particles=bottom_particles } save_game.store_line(data.to_json()) save_game.close() @@ -100,7 +102,7 @@ func load_game(): onscreen_controls = current_line["onscreen_controls"] cowbells = current_line["saved_cowbells"] saved_cowbells = cowbells - + max_milk = current_line["max_milk"] max_life = current_line["max_life"] life = current_line["life"] @@ -112,4 +114,7 @@ func load_game(): if (current_line.has("sound")): sound = current_line["sound"] music = current_line["music"] + + if (current_line.has("bottom_particles")): + bottom_particles = current_line["bottom_particles"] \ No newline at end of file diff --git a/Scenes/Menu/level_selector.gd b/Scenes/Menu/level_selector.gd index 7e7af52..1daffeb 100644 --- a/Scenes/Menu/level_selector.gd +++ b/Scenes/Menu/level_selector.gd @@ -19,7 +19,8 @@ func _ready(): func next_level(): if (global.level < levels.size()): global.level += 1 - global.unlocked_levels += 1 + if (global.level >= global.unlocked_levels): + global.unlocked_levels += 1 global.save_game() viewport.get_child(0).queue_free() #reset_hud() diff --git a/Scenes/Menu/main_menu.tscn b/Scenes/Menu/main_menu.tscn index 6769f7d..30fe143 100644 --- a/Scenes/Menu/main_menu.tscn +++ b/Scenes/Menu/main_menu.tscn @@ -1,14 +1,15 @@ -[gd_scene load_steps=11 format=1] +[gd_scene load_steps=12 format=1] [ext_resource path="res://Sprites/GUI/Buttons/btn_shoot.png" type="Texture" id=1] [ext_resource path="res://Fonts/pixelated_title.fnt" type="BitmapFont" id=2] -[ext_resource path="res://Scenes/Menu/bttn_play.gd" type="Script" id=3] -[ext_resource path="res://Scenes/Menu/about_button.gd" type="Script" id=4] -[ext_resource path="res://Music/dangerous_hills.ogg" type="AudioStream" id=5] -[ext_resource path="res://Scenes/Events/music.gd" type="Script" id=6] -[ext_resource path="res://Sprites/GUI/title_base.png" type="Texture" id=7] -[ext_resource path="res://Sprites/GUI/title_revenge.png" type="Texture" id=8] -[ext_resource path="res://Sprites/Effects/leche.png" type="Texture" id=9] +[ext_resource path="res://Scenes/Menu/back_button.gd" type="Script" id=3] +[ext_resource path="res://Scenes/Menu/bttn_play.gd" type="Script" id=4] +[ext_resource path="res://Scenes/Menu/about_button.gd" type="Script" id=5] +[ext_resource path="res://Music/dangerous_hills.ogg" type="AudioStream" id=6] +[ext_resource path="res://Scenes/Events/music.gd" type="Script" id=7] +[ext_resource path="res://Sprites/GUI/title_base.png" type="Texture" id=8] +[ext_resource path="res://Sprites/GUI/title_revenge.png" type="Texture" id=9] +[ext_resource path="res://Sprites/Effects/leche.png" type="Texture" id=10] [sub_resource type="GDScript" id=1] @@ -36,8 +37,8 @@ focus/ignore_mouse = false focus/stop_mouse = true size_flags/horizontal = 2 size_flags/vertical = 2 -margin/left = -13.0 -margin/top = -2.0 +margin/left = -31.0 +margin/top = -31.0 margin/right = 16.0 margin/bottom = 23.0 flat = false @@ -45,6 +46,26 @@ button/count = 0 button/min_button_size = -1.0 button/align = 1065353216 +[node name="Button" type="Button" parent="VButtonArray"] + +rect/scale = Vector2( 0.06, 0.1 ) +focus/ignore_mouse = false +focus/stop_mouse = true +size_flags/horizontal = 2 +size_flags/vertical = 2 +margin/left = 0.0 +margin/top = 0.0 +margin/right = 42.0 +margin/bottom = 37.0 +custom_fonts/font = ExtResource( 2 ) +toggle_mode = false +enabled_focus_mode = 2 +shortcut = null +text = "<" +flat = false +script/script = ExtResource( 3 ) +scene = null + [node name="play_button" type="Button" parent="VButtonArray"] anchor/top = 3 @@ -55,17 +76,17 @@ focus/ignore_mouse = false focus/stop_mouse = true size_flags/horizontal = 2 size_flags/vertical = 2 -margin/left = 1.90735e-06 -margin/top = 12.5 -margin/right = 290.0 -margin/bottom = -35.5 +margin/left = 18.0 +margin/top = -2.0 +margin/right = 308.0 +margin/bottom = -50.0 custom_fonts/font = ExtResource( 2 ) toggle_mode = false enabled_focus_mode = 2 shortcut = null text = "PLAY_GAME" flat = false -script/script = ExtResource( 3 ) +script/script = ExtResource( 4 ) [node name="settings_button" type="Button" parent="VButtonArray"] @@ -78,10 +99,10 @@ focus/ignore_mouse = false focus/stop_mouse = true size_flags/horizontal = 2 size_flags/vertical = 2 -margin/left = 14.5 -margin/top = 3.5 -margin/right = -274.5 -margin/bottom = -44.5 +margin/left = 5.5 +margin/top = -11.0 +margin/right = -283.5 +margin/bottom = -59.0 custom_fonts/font = ExtResource( 2 ) toggle_mode = false enabled_focus_mode = 2 @@ -101,23 +122,23 @@ focus/ignore_mouse = false focus/stop_mouse = true size_flags/horizontal = 2 size_flags/vertical = 2 -margin/left = 14.5 -margin/top = -5.5 -margin/right = -274.5 -margin/bottom = -53.5 +margin/left = 5.5 +margin/top = -20.0 +margin/right = -283.5 +margin/bottom = -68.0 custom_fonts/font = ExtResource( 2 ) toggle_mode = false enabled_focus_mode = 2 shortcut = null text = "ABOUT" flat = false -script/script = ExtResource( 4 ) +script/script = ExtResource( 5 ) [node name="StreamPlayer" type="StreamPlayer" parent="." groups=[ "music", ]] -stream/stream = ExtResource( 5 ) +stream/stream = ExtResource( 6 ) stream/play = false stream/loop = false stream/volume_db = 5.0 @@ -125,20 +146,20 @@ stream/autoplay = false stream/paused = false stream/loop_restart_time = 0.0 stream/buffering_ms = 500 -script/script = ExtResource( 6 ) +script/script = ExtResource( 7 ) [node name="Base" type="Sprite" parent="."] transform/pos = Vector2( 1.07855, -1.84071 ) transform/scale = Vector2( 0.0864583, 0.128739 ) z/z = -1 -texture = ExtResource( 7 ) +texture = ExtResource( 8 ) [node name="Revenge" type="Sprite" parent="."] transform/pos = Vector2( 1.87856, -1.84071 ) transform/scale = Vector2( 0.0864583, 0.128739 ) -texture = ExtResource( 8 ) +texture = ExtResource( 9 ) [node name="Particles2D" type="Particles2D" parent="."] @@ -151,7 +172,7 @@ config/amount = 8 config/lifetime = 2.5 config/preprocess = 1.0 config/process_mode = 1 -config/texture = ExtResource( 9 ) +config/texture = ExtResource( 10 ) params/direction = 0.0 params/spread = 1.0 params/linear_velocity = 500.0 @@ -183,7 +204,7 @@ config/amount = 8 config/lifetime = 2.5 config/preprocess = 1.0 config/process_mode = 1 -config/texture = ExtResource( 9 ) +config/texture = ExtResource( 10 ) params/direction = 0.0 params/spread = 1.0 params/linear_velocity = 500.0 @@ -215,7 +236,7 @@ config/amount = 6 config/lifetime = 2.5 config/preprocess = 1.0 config/process_mode = 1 -config/texture = ExtResource( 9 ) +config/texture = ExtResource( 10 ) params/direction = 0.0 params/spread = 1.0 params/linear_velocity = 500.0 @@ -247,7 +268,7 @@ config/amount = 6 config/lifetime = 2.5 config/preprocess = 1.0 config/process_mode = 1 -config/texture = ExtResource( 9 ) +config/texture = ExtResource( 10 ) params/direction = 0.0 params/spread = 1.0 params/linear_velocity = 500.0 @@ -268,6 +289,8 @@ randomness/spread = 10.0 randomness/linear_velocity = 0.5 color/color = Color( 0.851562, 0.459045, 0.83623, 1 ) +[connection signal="pressed" from="VButtonArray/Button" to="VButtonArray/Button" method="_on_Button_pressed"] + [connection signal="pressed" from="VButtonArray/play_button" to="VButtonArray/play_button" method="_on_Button_pressed"] [connection signal="pressed" from="VButtonArray/settings_button" to="VButtonArray/settings_button" method="_on_settings_button_pressed"] diff --git a/Scenes/Menu/settings.tscn b/Scenes/Menu/settings.tscn index b15c844..f19de1e 100644 --- a/Scenes/Menu/settings.tscn +++ b/Scenes/Menu/settings.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=9 format=1] +[gd_scene load_steps=10 format=1] [ext_resource path="res://Fonts/pixelated_regular.fnt" type="BitmapFont" id=1] [ext_resource path="res://Scenes/Menu/button_back.tscn" type="PackedScene" id=2] @@ -57,6 +57,18 @@ func _ready(): func _on_CheckButton3_toggled( pressed ): global.sound = !global.sound" +[sub_resource type="GDScript" id=5] + +script/source = "extends CheckButton + +func _ready(): + set_pressed(global.bottom_particles) + +func _on_CheckButton4_toggled( pressed ): + global.bottom_particles = !global.bottom_particles + +" + [node name="Control" type="Control"] focus/ignore_mouse = false @@ -179,6 +191,26 @@ flat = false align = 0 script/script = SubResource( 4 ) +[node name="CheckButton4" type="CheckButton" parent="Panel/VBoxContainer"] + +rect/min_size = Vector2( 0, 30 ) +focus/ignore_mouse = false +focus/stop_mouse = true +size_flags/horizontal = 2 +size_flags/vertical = 2 +margin/left = 0.0 +margin/top = 136.0 +margin/right = 486.0 +margin/bottom = 166.0 +custom_fonts/font = ExtResource( 1 ) +toggle_mode = true +enabled_focus_mode = 2 +shortcut = null +text = "SWITCH_BOTTOM_PARTICLES" +flat = false +align = 0 +script/script = SubResource( 5 ) + [node name="VButtonArray" type="VButtonArray" parent="Panel"] focus/ignore_mouse = false @@ -228,4 +260,6 @@ max_lines_visible = -1 [connection signal="toggled" from="Panel/VBoxContainer/CheckButton3" to="Panel/VBoxContainer/CheckButton3" method="_on_CheckButton3_toggled"] +[connection signal="toggled" from="Panel/VBoxContainer/CheckButton4" to="Panel/VBoxContainer/CheckButton4" method="_on_CheckButton4_toggled"] + diff --git a/Scenes/Menu/ufo_store.tscn b/Scenes/Menu/ufo_store.tscn index 3b397e1..e5ea974 100644 --- a/Scenes/Menu/ufo_store.tscn +++ b/Scenes/Menu/ufo_store.tscn @@ -60,7 +60,7 @@ margin/top = -19.0 margin/right = 414.0 margin/bottom = 20.0 custom_fonts/font = ExtResource( 2 ) -text = "UFO Store" +text = "UFO_STORE" percent_visible = 1.0 lines_skipped = 0 max_lines_visible = -1 diff --git a/Sprites/Effects/bottom_level_particles.png b/Sprites/Effects/bottom_level_particles.png new file mode 100644 index 0000000..e92fae4 Binary files /dev/null and b/Sprites/Effects/bottom_level_particles.png differ diff --git a/Sprites/Effects/bottom_level_particles.png.flags b/Sprites/Effects/bottom_level_particles.png.flags new file mode 100644 index 0000000..d5476d5 --- /dev/null +++ b/Sprites/Effects/bottom_level_particles.png.flags @@ -0,0 +1 @@ +repeat=true diff --git a/Sprites/Effects/white.png b/Sprites/Effects/white.png new file mode 100644 index 0000000..86d7c58 Binary files /dev/null and b/Sprites/Effects/white.png differ diff --git a/engine.cfg b/engine.cfg index 80f3538..bcc0657 100644 --- a/engine.cfg +++ b/engine.cfg @@ -1,6 +1,6 @@ [application] -name="Cow's Revenge" +name="CowsRevenge" main_scene="res://Scenes/Menu/main_menu.tscn" icon="res://high_res_icon.png" @@ -14,7 +14,6 @@ force_fps=60 [display] -use_vsync=true stretch_mode="viewport" use_2d_pixel_snap=true width=1280 @@ -50,7 +49,7 @@ ui_jump=[key(A), key(Space), jbutton(0, 0)] [locale] -translations=["res://Locales/locales.xl", "res://Locales/locales.es.xl", "res://Locales/locales.en.xl"] +translations=["res://Locales/locales.es.xl", "res://Locales/locales.en.xl", "res://Locales/locales.de.xl"] [physics] diff --git a/export.cfg b/export.cfg index f98f8df..69eccbc 100644 --- a/export.cfg +++ b/export.cfg @@ -19,6 +19,7 @@ convert_text_scenes=true filter="" filter_exclude="" +filter_exclude_dir="" type="resources" [platform:Android] @@ -27,14 +28,15 @@ apk_expansion/SALT="" apk_expansion/enable=false apk_expansion/public_key="" architecture/arm=true +architecture/arm64=false architecture/x86=false command_line/extra_args="" custom_package/debug="" custom_package/release="" debug/debugging_enabled=false keystore/release="/home/darias/release.keystore" -keystore/release_password="cualquierboberia" -keystore/release_user="pipoypipagames" +keystore/release_password="a" +keystore/release_user="a" one_click_deploy/clear_previous_install=false package/icon="res://high_res_icon.png" package/name="Cow's Revenge" @@ -212,8 +214,8 @@ user_permissions/6="" user_permissions/7="" user_permissions/8="" user_permissions/9="" -version/code=6 -version/name="1.0.4" +version/code=9 +version/name="1.0.5" [platform:BlackBerry 10] @@ -259,9 +261,9 @@ application/icon="res://high_res_icon.png" application/identifier="org.godotengine.macgame" application/info="Made with Godot Engine" application/name="" -application/short_version="1.0.3" +application/short_version="1.0.5" application/signature="godotmacgame" -application/version="1.0.3" +application/version="1.0.5" codesign/entitlements="" codesign/identity="" custom_package/debug="" diff --git a/f-droid/src/main/play/en/whatsnew b/f-droid/src/main/play/en/whatsnew index 2b5fd6a..0308c13 100644 --- a/f-droid/src/main/play/en/whatsnew +++ b/f-droid/src/main/play/en/whatsnew @@ -1 +1,5 @@ -First F-Droid Release +- Toggle music / sound in settings menu +- Gamepad improvements(thanks to contributor basxto): + - Add Going back in menues with B + - Additionally shooting with triggers + - Changing weapons with shoulder buttons diff --git a/f-droid/src/main/play/es/whatsnew b/f-droid/src/main/play/es/whatsnew index cd7679d..9b3c4e1 100644 --- a/f-droid/src/main/play/es/whatsnew +++ b/f-droid/src/main/play/es/whatsnew @@ -1,2 +1,5 @@ -Primera versión en F-Droid - +- Activa o desactiva la música y los sonidos en el menú principal +- Mejoras en el soporte de mando (contribución de Basxto) + - Botón B para vovler atrás en los menús + - DIsparo con los gatillos + - Cambio de arma con los bumpers diff --git a/linux_build/com.github.dariasteam.cowsrevenge.appdata.xml b/linux_build/com.github.dariasteam.cowsrevenge.appdata.xml index 85b2c64..ea30c16 100644 --- a/linux_build/com.github.dariasteam.cowsrevenge.appdata.xml +++ b/linux_build/com.github.dariasteam.cowsrevenge.appdata.xml @@ -68,14 +68,18 @@

- First packaged linux release featuring 8 playable levels and - gamepad support. + - Allow mute sound and music + - Add partial German translation (thanks to Basxto) + - Better gamepad support + - Minor bugfixes and improvements

- Primera versión linux empaquetada, ofrece 8 niveles jugables - y soporte para mandos. + - Añade la opción de desactivar el sonido y la música + - Añade soporte parcial para Alemán (Contribución de Basxto) + - Soporte para mando mejorado + - Correciones y mejoras menores