]> git.mxchange.org Git - quix0rs-blobwars.git/log
quix0rs-blobwars.git
9 years agoMake sure the Windows icon is square.
Guus Sliepen [Sat, 21 Nov 2015 20:00:09 +0000 (21:00 +0100)]
Make sure the Windows icon is square.

9 years agoSet the window icon.
Guus Sliepen [Sat, 21 Nov 2015 19:54:03 +0000 (20:54 +0100)]
Set the window icon.

9 years agoOnly blobwars.exe and mapeditor.exe are graphical programs.
Guus Sliepen [Sat, 21 Nov 2015 19:46:04 +0000 (20:46 +0100)]
Only blobwars.exe and mapeditor.exe are graphical programs.

9 years agoFix building pak.exe.
Guus Sliepen [Sat, 21 Nov 2015 19:45:17 +0000 (20:45 +0100)]
Fix building pak.exe.

9 years agoOnly try to chdir(PAKLOCATION) if it's actually set.
Guus Sliepen [Sat, 21 Nov 2015 19:42:26 +0000 (20:42 +0100)]
Only try to chdir(PAKLOCATION) if it's actually set.

9 years agoCall SDL_RenderClear() after every frame.
Guus Sliepen [Sat, 21 Nov 2015 19:38:43 +0000 (20:38 +0100)]
Call SDL_RenderClear() after every frame.

This ensures there is no cruft visible when resizing the window or
toggling fullscreen mode.

9 years agoFix hub pointer motion.
Guus Sliepen [Sat, 21 Nov 2015 17:07:56 +0000 (18:07 +0100)]
Fix hub pointer motion.

Use mouse motion events to find out where the mouse is. This doesn't
require scaling with the window size anymore, unlike
SDL_GetMouseState(). Also, don't use SDL_WarpMouseInWindow() anymore, it
doesn't seem to work correctly anymore. Instead, just update our idea of
the mouse pointer's position.

9 years agoHandle joystick hat (aka digital pad) events.
Guus Sliepen [Sat, 21 Nov 2015 16:35:14 +0000 (17:35 +0100)]
Handle joystick hat (aka digital pad) events.

9 years agoFix all issues found by the Clang Static Analyzer.
Guus Sliepen [Sat, 21 Nov 2015 16:07:54 +0000 (17:07 +0100)]
Fix all issues found by the Clang Static Analyzer.

Only a few were actual errors.

9 years agoFix missing pointer initialization.
Guus Sliepen [Sat, 21 Nov 2015 15:17:31 +0000 (16:17 +0100)]
Fix missing pointer initialization.

Found by Clang.

9 years agoAdd bounds checking to map->isFoo() functions.
Guus Sliepen [Sat, 21 Nov 2015 15:12:41 +0000 (16:12 +0100)]
Add bounds checking to map->isFoo() functions.

The Address Sanitizer found a possible out of bounds read while playing
Blobwars:

src/CMap.cpp:147:15: runtime error: index 300 out of bounds for type 'unsigned char [300]'
src/CMap.cpp:117:16: runtime error: index 300 out of bounds for type 'unsigned char [300]'

9 years agoGet rid of false positive warnings from cppcheck.
Guus Sliepen [Sat, 21 Nov 2015 14:45:57 +0000 (15:45 +0100)]
Get rid of false positive warnings from cppcheck.

9 years agoFix warnings from -W.
Guus Sliepen [Sat, 21 Nov 2015 14:40:52 +0000 (15:40 +0100)]
Fix warnings from -W.

9 years agoUpdate credits in all languages.
Guus Sliepen [Mon, 10 Aug 2015 14:42:35 +0000 (16:42 +0200)]
Update credits in all languages.

9 years agoSet LC_NUMERIC to C.
Guus Sliepen [Mon, 10 Aug 2015 14:10:28 +0000 (16:10 +0200)]
Set LC_NUMERIC to C.

This prevents floating point values that are stored as ASCII in files
from being misinterpreted if the locale changes.

9 years agoDon't define variables in header files.
Guus Sliepen [Mon, 10 Aug 2015 13:40:43 +0000 (15:40 +0200)]
Don't define variables in header files.

9 years agoFix reading one element past the end of an array.
Guus Sliepen [Mon, 10 Aug 2015 13:39:01 +0000 (15:39 +0200)]
Fix reading one element past the end of an array.

Found by cppcheck.

9 years agoAllow scrolling the credits faster (up and down).
Guus Sliepen [Mon, 10 Aug 2015 13:30:22 +0000 (15:30 +0200)]
Allow scrolling the credits faster (up and down).

9 years agoFix position of the Alien Device in the credits.
Guus Sliepen [Mon, 10 Aug 2015 13:29:49 +0000 (15:29 +0200)]
Fix position of the Alien Device in the credits.

9 years agoUpdate credits and license translations.
Guus Sliepen [Mon, 10 Aug 2015 13:27:32 +0000 (15:27 +0200)]
Update credits and license translations.

9 years agoRemove the C++11 requirement for now.
Guus Sliepen [Mon, 10 Aug 2015 13:09:27 +0000 (15:09 +0200)]
Remove the C++11 requirement for now.

It's better to keep it C++98 for another release, afterwards there can be
a proper migration to C++11.

9 years agoFix compilation using mingw.
Guus Sliepen [Mon, 10 Aug 2015 12:11:47 +0000 (14:11 +0200)]
Fix compilation using mingw.

This doesn't mean it is actually running.

9 years agoRemove some dark very dark but nontransparent pixels from some tiles.
Guus Sliepen [Mon, 10 Aug 2015 10:45:52 +0000 (12:45 +0200)]
Remove some dark very dark but nontransparent pixels from some tiles.

When they are superimposed on light backgrounds, these stood out a bit
too much.

9 years agoOptimize day.png with AdvanceCOMP.
Guus Sliepen [Mon, 10 Aug 2015 10:45:10 +0000 (12:45 +0200)]
Optimize day.png with AdvanceCOMP.

9 years agoRedo music credits during the game.
Guus Sliepen [Sun, 9 Aug 2015 22:46:24 +0000 (00:46 +0200)]
Redo music credits during the game.

Create a surface containing the credits on demand, and keep it around in
memory until they faded out. Also do proper alpha blending so it is
slightly less disturbing.

9 years agoRemove font size guessing hack.
Guus Sliepen [Sun, 9 Aug 2015 21:27:18 +0000 (23:27 +0200)]
Remove font size guessing hack.

According to the documentation, the point size given to TTF_OpenFont()
is always assuming 72 DPI, so there is no need to repeatedly trying to
load the font and checking the font metrics until we hit upon a point
size that matches the pixel size we want. Instead we can just give the
corresponding point size directly.

9 years agoFix compilation with USEPAK=1.
Guus Sliepen [Sun, 9 Aug 2015 18:35:36 +0000 (20:35 +0200)]
Fix compilation with USEPAK=1.

9 years agoFix grenades going backwards when the player is moving.
Guus Sliepen [Sun, 9 Aug 2015 18:19:31 +0000 (20:19 +0200)]
Fix grenades going backwards when the player is moving.

Most weapon bullets have a speed which is much higher than the player
can move, but grenades are relatively slow. Since Bob started moving
faster many versions ago, grenades were actually slower than Bob
himself. Since there was no concept of bullets inheriting the speed of
the entity shooting them, that meant that when Bob was moving forward
and tried to throw a grenade, the grenade would actually move backwards
relative to Bob.

We fix that now by making grenades inherit the velocity of the entity
throwing them. Unfortunately, a player that is on a moving platform is
considered not to have any velocity, even if the platform is moving. In
stead of rewriting everything to track the actual velocity of entities
on platforms, we just check if the grenade throwing entity is on a
platform, and if so add the platform's velocity to the grenade.

With the old starting velocity of grenades plus Bob's own speed,
grenades could actually be thrown very fast. Compensate that by making
the starting velocity of grenades much lower. It might make some puzzles
involving grenades a bit harder.

9 years agoFix throwing grenades from moving platforms.
Guus Sliepen [Sun, 9 Aug 2015 16:28:26 +0000 (18:28 +0200)]
Fix throwing grenades from moving platforms.

The train and obstacle collision code made a distinction between
horizontally moving entities (which covers bullets and lasers), and
vertically moving entities (falling items?), but didn't handle
diagonally moving entities correctly, like grenades.

9 years agoFix some more fallout from the conversion to SDL2.
Guus Sliepen [Sun, 9 Aug 2015 16:05:39 +0000 (18:05 +0200)]
Fix some more fallout from the conversion to SDL2.

9 years agoReduce stereo angle for sound effects a bit.
Guus Sliepen [Sun, 9 Aug 2015 15:34:54 +0000 (17:34 +0200)]
Reduce stereo angle for sound effects a bit.

9 years agoDon't let bubbles escape the liquid they are in.
Guus Sliepen [Sun, 9 Aug 2015 15:26:41 +0000 (17:26 +0200)]
Don't let bubbles escape the liquid they are in.

9 years agoFix addColorParticles() when color is not -1.
Guus Sliepen [Sun, 9 Aug 2015 14:41:00 +0000 (16:41 +0200)]
Fix addColorParticles() when color is not -1.

This only is used when ENT_PARTICLETRAIL is set, which might actually
not be used anywhere.

9 years agoFix minimap rendering.
Guus Sliepen [Sun, 9 Aug 2015 14:40:19 +0000 (16:40 +0200)]
Fix minimap rendering.

9 years agoAdd position information to sounds effects.
Guus Sliepen [Sun, 9 Aug 2015 14:19:32 +0000 (16:19 +0200)]
Add position information to sounds effects.

9 years agoAllow playing sounds with stereo effects.
Guus Sliepen [Sun, 9 Aug 2015 13:54:21 +0000 (15:54 +0200)]
Allow playing sounds with stereo effects.

This is basically a copy of the playSound routine from Project: Starfighter.

9 years agoPrevent a segmentation fault when using the -map option without specifying a map.
Guus Sliepen [Sun, 9 Aug 2015 13:18:27 +0000 (15:18 +0200)]
Prevent a segmentation fault when using the -map option without specifying a map.

9 years agoFix compilation of the mapEditor.
Guus Sliepen [Sun, 9 Aug 2015 12:46:00 +0000 (14:46 +0200)]
Fix compilation of the mapEditor.

9 years agoMake the window resizable, and set a reasonable initial size.
Guus Sliepen [Sun, 9 Aug 2015 12:31:26 +0000 (14:31 +0200)]
Make the window resizable, and set a reasonable initial size.

Now that SDL takes care of properly scaling the graphics, there is no
need for the window to be exactly 640x480. So allow the user to resize
it. To cope with high DPI screens, set the initial window size to a
multiple of 640x480 if it would fill less than half the width and
height.

9 years agoClean up some cave and lava tiles.
Guus Sliepen [Sat, 8 Aug 2015 22:07:41 +0000 (00:07 +0200)]
Clean up some cave and lava tiles.

9 years agoRecreate the grasslands background without JPEG artifacts.
Guus Sliepen [Sat, 8 Aug 2015 21:47:56 +0000 (23:47 +0200)]
Recreate the grasslands background without JPEG artifacts.

9 years agoMention that we are now using SDL2 in the manual and intro screen.
Guus Sliepen [Sat, 8 Aug 2015 21:26:27 +0000 (23:26 +0200)]
Mention that we are now using SDL2 in the manual and intro screen.

9 years agoEnable vsync if available.
Guus Sliepen [Sat, 8 Aug 2015 21:20:46 +0000 (23:20 +0200)]
Enable vsync if available.

9 years agoFix display of key names in the keyboard configuration screen.
Guus Sliepen [Sat, 8 Aug 2015 20:13:24 +0000 (22:13 +0200)]
Fix display of key names in the keyboard configuration screen.

9 years agoMake the game playable using only a gamepad.
Guus Sliepen [Thu, 6 Aug 2015 17:50:58 +0000 (19:50 +0200)]
Make the game playable using only a gamepad.

9 years agoFix mouse scaling in fullscreen mode.
Guus Sliepen [Thu, 6 Aug 2015 16:49:33 +0000 (18:49 +0200)]
Fix mouse scaling in fullscreen mode.

9 years agoBetter default joystick configuration.
Guus Sliepen [Thu, 6 Aug 2015 16:44:39 +0000 (18:44 +0200)]
Better default joystick configuration.

Most controllers are nowadays of the Xbox type, so set the default
buttons accordingly.

9 years agoEnable C++11.
Guus Sliepen [Thu, 6 Aug 2015 16:44:08 +0000 (18:44 +0200)]
Enable C++11.

9 years agoCapitalize Makefiles.
Guus Sliepen [Thu, 6 Aug 2015 16:19:55 +0000 (18:19 +0200)]
Capitalize Makefiles.

9 years agoUpdate copyright statements.
Guus Sliepen [Thu, 6 Aug 2015 16:16:46 +0000 (18:16 +0200)]
Update copyright statements.

9 years agoCoalesce printf() statements in main.cpp, make them translatable.
Guus Sliepen [Thu, 6 Aug 2015 15:33:11 +0000 (17:33 +0200)]
Coalesce printf() statements in main.cpp, make them translatable.

9 years agoRemove duplication of showVersion().
Guus Sliepen [Thu, 6 Aug 2015 15:27:01 +0000 (17:27 +0200)]
Remove duplication of showVersion().

9 years agoAdd the -window option as a counterpart to -fullscreen.
Guus Sliepen [Thu, 6 Aug 2015 15:21:50 +0000 (17:21 +0200)]
Add the -window option as a counterpart to -fullscreen.

9 years agoLoad configuration before parsing command line options.
Guus Sliepen [Thu, 6 Aug 2015 15:19:21 +0000 (17:19 +0200)]
Load configuration before parsing command line options.

Before, if there was a valid configuration file, then some command line
options did not have any effect.

9 years agoShow help when encountering an unknown argument on the command line.
Guus Sliepen [Thu, 6 Aug 2015 15:16:12 +0000 (17:16 +0200)]
Show help when encountering an unknown argument on the command line.

9 years agoFix compiling blobwars without SDL1 headers present.
Guus Sliepen [Thu, 6 Aug 2015 15:15:56 +0000 (17:15 +0200)]
Fix compiling blobwars without SDL1 headers present.

11 years agoDelay switching to fullscreen mode.
Guus Sliepen [Tue, 1 Oct 2013 12:26:50 +0000 (14:26 +0200)]
Delay switching to fullscreen mode.

If we make the window fullscreen too early during program start, then turning
fullscreen off will not change the window size back to 640x480 pixels.

11 years agoFix color key and alpha blending.
Guus Sliepen [Tue, 1 Oct 2013 12:26:27 +0000 (14:26 +0200)]
Fix color key and alpha blending.

11 years agoInitial conversion to SDL2.
Guus Sliepen [Tue, 1 Oct 2013 11:11:43 +0000 (13:11 +0200)]
Initial conversion to SDL2.

Color keys and alpha blending is not working correctly yet.

11 years agoAdd Language headers to all .po files.
Guus Sliepen [Tue, 1 Oct 2013 08:32:02 +0000 (10:32 +0200)]
Add Language headers to all .po files.

11 years agoDon't use gzclose() on a FILE *.
Guus Sliepen [Sun, 7 Jul 2013 16:55:29 +0000 (18:55 +0200)]
Don't use gzclose() on a FILE *.

11 years agoUpdated PNG icon files.
Tim Dickson [Sun, 7 Jul 2013 16:32:44 +0000 (18:32 +0200)]
Updated PNG icon files.

The PNG files under icons directory are not square, so that when KDE shows them
they get stretched. I have created updated icon files for 16x16,
32x32,48x48,64x64 to replace the 16x12,32,24,missing, and 64,48 icons.

12 years agoFix building with clang.
Cyril Roelandt [Mon, 3 Sep 2012 00:59:41 +0000 (02:59 +0200)]
Fix building with clang.

blobwars currently FTBFS with clang 3.1 (the full build log can be found at
http://clang.debian.net/logs/2012-06-23/blobwars_1.19-2_unstable_clang.log).
The attached patch should fix this issue.

13 years agoTell SDL to use double buffering if available.
Guus Sliepen [Mon, 29 Aug 2011 20:03:42 +0000 (22:03 +0200)]
Tell SDL to use double buffering if available.

13 years agoMake build system respect LDFLAGS.
Pacho Ramos [Mon, 29 Aug 2011 18:36:16 +0000 (20:36 +0200)]
Make build system respect LDFLAGS.

13 years agoTruncate machinegun sample to the sound of just one bullet.
Guus Sliepen [Fri, 5 Aug 2011 11:13:27 +0000 (13:13 +0200)]
Truncate machinegun sample to the sound of just one bullet.

13 years agoRecompress all PNG files.
Guus Sliepen [Fri, 5 Aug 2011 09:58:31 +0000 (11:58 +0200)]
Recompress all PNG files.

The advpng tool from AdvanceCOMP has been used to recompress all PNG files.
This decreases their size with 7%, which saves 152 kB.

13 years agoDon't link pak tool with SDL.
Guus Sliepen [Thu, 4 Aug 2011 14:08:47 +0000 (16:08 +0200)]
Don't link pak tool with SDL.

13 years agoDon't use sdlmain in the pak tool
Alan Trulock [Thu, 4 Aug 2011 14:07:21 +0000 (16:07 +0200)]
Don't use sdlmain in the pak tool

On Mac OS X, compiling pak from the command line works as expected but
compiling in Xcode results in bus errors when running the program. By patching
pak.h and linking only to libz within Xcode, pak compiles and runs as expected.

13 years agoIncorrect reference to SDL_FRMEWORK
Alan Trulock [Thu, 4 Aug 2011 14:01:12 +0000 (16:01 +0200)]
Incorrect reference to SDL_FRMEWORK

There are two references to SDL_FRAMEWORK that should have been written
FRAMEWORK_SDL. In CGame.cpp, I think the section should be removed in it's
entirety as there is really no need for it and correcting the define results in
failure when compiling. In init.cpp, correcting the define allows Mac OS X
builds to assign a custom icon. If this is not fixed, the icon gets replaced
every time the game is run.

13 years agoAdd SDL_net to frameworks
Alan Trulock [Mon, 25 Jul 2011 20:06:50 +0000 (22:06 +0200)]
Add SDL_net to frameworks

When SDL_net was introduced, the framework was not added to headers.h. This
causes a problem when compiling with -DFRAMEWORK_SDL=1.

13 years agoLIBS go after objects to allow linking with ld --as-needed
Andreas Moog [Sun, 19 Jun 2011 20:03:10 +0000 (22:03 +0200)]
LIBS go after objects to allow linking with ld --as-needed

13 years agoCheck return value of chdir
Hans de Goede [Fri, 22 Apr 2011 17:56:00 +0000 (19:56 +0200)]
Check return value of chdir

Not checking this causes a warning when building under Fedora which becomes
an error because of -Werror.

13 years agoUpdate copyrights to 2011.
Guus Sliepen [Sun, 17 Apr 2011 14:56:56 +0000 (16:56 +0200)]
Update copyrights to 2011.

13 years agoDon't forget to install the documentation.
Guus Sliepen [Sun, 17 Apr 2011 14:39:05 +0000 (16:39 +0200)]
Don't forget to install the documentation.

13 years agoBump version and update changelog.
Guus Sliepen [Sun, 17 Apr 2011 14:17:06 +0000 (16:17 +0200)]
Bump version and update changelog.

13 years agoFix posting medals to the medal server.
Guus Sliepen [Sun, 17 Apr 2011 13:45:20 +0000 (15:45 +0200)]
Fix posting medals to the medal server.

13 years agoEnsure all credits are shown.
Guus Sliepen [Mon, 28 Feb 2011 12:12:42 +0000 (13:12 +0100)]
Ensure all credits are shown.

The first line of the data/credits file is the number of lines in this file...

13 years agoUpdate credits for the song Herbs, originally Claustrophobia from LizardKing.
Guus Sliepen [Mon, 28 Feb 2011 12:09:40 +0000 (13:09 +0100)]
Update credits for the song Herbs, originally Claustrophobia from LizardKing.

LizardKing is the original composer of the song "Claustrophobia", which was
only slightly modified by Ambick and redistributed as "Herbs". LizardKing has
given permission to use his song under the CC-BY-SA 3.0 license, which allows
Ambick's version, but it does require proper attribution.

13 years agoPreserve timestamps when installing data files
Hans de Goede [Tue, 15 Feb 2011 08:55:33 +0000 (09:55 +0100)]
Preserve timestamps when installing data files

Since these are not regenerated each build, it is a good idea to preserve the
timestamps when installing.

13 years agoPictures are not executable.
Guus Sliepen [Mon, 14 Feb 2011 20:39:07 +0000 (21:39 +0100)]
Pictures are not executable.

13 years agoAdd .PHONY target.
Guus Sliepen [Mon, 14 Feb 2011 15:39:44 +0000 (16:39 +0100)]
Add .PHONY target.

13 years agoAllow many makefile variables to be overridden from the environment.
Guus Sliepen [Mon, 14 Feb 2011 15:34:02 +0000 (16:34 +0100)]
Allow many makefile variables to be overridden from the environment.

13 years agoDo not use DESTDIR in PREFIX, but only in the install target.
Guus Sliepen [Mon, 14 Feb 2011 15:30:07 +0000 (16:30 +0100)]
Do not use DESTDIR in PREFIX, but only in the install target.

13 years agoConditional building and installing of pak files.
Guus Sliepen [Mon, 14 Feb 2011 15:24:45 +0000 (16:24 +0100)]
Conditional building and installing of pak files.

13 years agoChdir() to the data directory when RELEASE is #defined.
Guus Sliepen [Mon, 14 Feb 2011 15:14:24 +0000 (16:14 +0100)]
Chdir() to the data directory when RELEASE is #defined.

This ensures an installed version of Blobwars can find the data files if it is
not in a .pak file.

13 years agoCleanup .desktop file
Hans de Goede [Mon, 14 Feb 2011 14:58:36 +0000 (15:58 +0100)]
Cleanup .desktop file

13 years agoDon't make the files / binaries owned by group games
Hans de Goede [Mon, 14 Feb 2011 14:57:34 +0000 (15:57 +0100)]
Don't make the files / binaries owned by group games

There is no need for this and it breaks running make install as a non
root user.

13 years agoAdd doc/samples which more accurately tracks samples origin
Hans de Goede [Mon, 14 Feb 2011 11:58:50 +0000 (12:58 +0100)]
Add doc/samples which more accurately tracks samples origin

doc/samples more accurately lists the origin of various samples, including
things like original filenames or full URL-s where possible. It also notes
if changes were made to the original and which changes were made.

This commit also adds the .sfxr files which can be opened in sfxr to edit
the sfxr generated effects.

13 years agoAdd missing credit for item sample
Hans de Goede [Mon, 14 Feb 2011 11:54:55 +0000 (12:54 +0100)]
Add missing credit for item sample

13 years agoFix -Wunused-result compiler warnings
Hans de Goede [Mon, 14 Feb 2011 11:22:07 +0000 (12:22 +0100)]
Fix -Wunused-result compiler warnings

Fedora uses -Wunused-result when building packages, combined with the -Werror
from the makefile, this causes compile errors in various places because
of not properly error checking various file io actions. This patch fixes this.

13 years agoFix new compiler warnings thrown by gcc-4.6
Hans de Goede [Sun, 13 Feb 2011 20:05:03 +0000 (21:05 +0100)]
Fix new compiler warnings thrown by gcc-4.6

13 years agoAdd NSIS script to create a Windows installer.
Guus Sliepen [Sun, 13 Feb 2011 17:14:00 +0000 (18:14 +0100)]
Add NSIS script to create a Windows installer.

13 years agoRemove unnecessary delay while initialising.
Guus Sliepen [Sun, 13 Feb 2011 17:12:23 +0000 (18:12 +0100)]
Remove unnecessary delay while initialising.

13 years agoAllow music tags to be stored in the pak file.
Guus Sliepen [Sun, 13 Feb 2011 17:11:28 +0000 (18:11 +0100)]
Allow music tags to be stored in the pak file.

13 years agoSmall fixes for the Windows makefile.
Guus Sliepen [Sun, 13 Feb 2011 17:08:56 +0000 (18:08 +0100)]
Small fixes for the Windows makefile.

13 years agoDon't enable gettext support on Windows for now.
Guus Sliepen [Sun, 13 Feb 2011 17:07:33 +0000 (18:07 +0100)]
Don't enable gettext support on Windows for now.

13 years agoBump version and update changelog.
Guus Sliepen [Thu, 30 Dec 2010 15:13:01 +0000 (16:13 +0100)]
Bump version and update changelog.

13 years agoUpdate readme file with all license information.
Guus Sliepen [Thu, 30 Dec 2010 15:00:23 +0000 (16:00 +0100)]
Update readme file with all license information.

13 years agoUpdate copyrights.
Guus Sliepen [Thu, 30 Dec 2010 14:53:29 +0000 (15:53 +0100)]
Update copyrights.

The last release from Parallel Realities was in 2010.