-
Content Count
49 -
Joined
-
Days Won
35
Posts posted by w0wZukuBg
-
-
Let me show you my next map!) Just a map in which I managed to accommodate all
the cities of Run-Midgard to 13.2 episodes and even Kunlun. You will never guess
why this location was created (it was just for some kind of Fast Travel...) And I
started to draw this even before the game Cuphead appears! Now I think,
what if I combine this idea with my map ....•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.
rm_mini
SpoilerThe outlines of the world are quite equivalent to the original map presented
in most sources. The map requires an airy atmosphere because of Kunlun (you can see it at 08:16 in the video)
and Juno. Despite a large number of objects, nothing slows the FPS,
unless of course tilting the camera by 90 degrees, like this:The clouds are added on top of the picture just for the w0w effect,
in fact they are at the bottom and above just a blue background = )
A lot of objects are available for moving, for example, you can
go to the ships. Also, almost all types of land near the water
are covered by hill objects to hide the difference between
the marine and earth texture.By the way, it was pretty fun to bring the big-sized Morroc into this world.
If he were really so big, he would cause more cause for concern hahaa ~Please rate it if the map is good enough
-
Hello and hi!) I show you the next half-ready project) Now I tried to update
the appearance of the locations around the Prontera, as it were in episode 16.
Bad or not - you decide. This project is the subpart of a larger update of
locations, of which I will report later ..•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.
All models of trees, bushes, and bridges are replaced by new ones from new
episodes. A custom texture is created that differs from the new standard
with a higher brightness and which is more in tune with the old texture.
And everywhere were planted hundreds of all kinds of flowers, which only
could find in the models. Now I can not imagine the field without this small update ¬3¬Old - standart texture
Test - the texture received in the process of improvement
New - the best result that could be identified among dozens variants of brightness and intencity changing by 1% ^O^At the moment, half of the Prontera maps are ready, and the combined textures of the locations of Morroc and Prontera are made.
-
There is one game - Jedi Knight: Jedi Academy - in which you run and
fight, being a Jedi. There was a good multiplayer for team competitions
and death matches. Also, players themselves could create locations for
competitive modes. One of them was loved by me most of all,
thanks to a unique map and an interesting realization of different tricks.
Now I don't have any original files of this map for JK, no screenshots,
but the idea is alive!.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.
crystal
SpoilerThe rules were slightly modified, here is the latest version:
In this mode, one of the commands is located outside the bunker and must
capture it by breaking the crystal which is located on the 4th floor in
a special room. The task of the second team is not to do this and to
score 25 points, killing 25 players of the opposing team. If both these
conditions do not occur, then the team that kills more players from the
opposing team wins. For the destruction of the crystal or keeping it for
the rest of the time, the teams receive 25 extra points.There are as many as 4 ways to get inside.
Spoiler1) The first is to open the central entrance from the inside. You can do
this by activating the lever, which will open the passage for 10
seconds. Usually this is used in the first seconds of the game for fun
or for full control of the territory, if the bunker is safe (inside
there must always be one of the team players to quickly open the door
for retreat). This is the fastest way to get to the 1st floor.2) The second is to open the main door leading to the guest hall of the
bunker. To do this, you need to activate two devices after spending 5
seconds. In this case, the enemy team can prevent you, attacking
remotely from the nearest balcony and knocking down the timer (the door
can be closed again from either side by activating both devices and
spending 25 seconds).3) The third is to get into the corridors of communication and sewerage
through the destroyed foundation. This way you can also get to the 1st
floor and it is always open.>>>>>
4) The fourth is to climb the outer southern wall of the bunker. There is a
reserve entrance, which will not be closed after opening, because the
door device was broken in order to prevent diversions, because this is
the closest door to the room with the crystal from the outside. The
attacking team must activate the detonator nearby and move to a safe
place, otherwise they will be killed by an explosion.There are also two additional passes (but these are optional for the
game and can be disabled at will).Spoiler1) The first is a ladder leading from the guest room to the upper floor of
the bunker. To get to it, just activate the door unit for 5 seconds. The
door can also be closed from either side after spending 5 seconds.2) The second is a sabotage portal elevator right into the room with the
crystal. You can get into the secret room with the portal through the
side door at the beginning of the stairs. To do this, you must type
a password from the numbers, which changes every new game.
You can find out the password on one of the tables
in the laboratory located in the guest room.>>>>>
Traps and Tricks:
Spoiler1) All doors with the device except the emergency exit on the top floor
can be opened (after spending 5 seconds), and close (spending 25
seconds). Dual devices can be activated by 2 players at a time.2) In the laboratory, you can activate a deadly electric shock
throughout the passage once every three seconds. In this case, the
impact does not affect those who have time to go into the adjacent
corridor leading to the balcony. The device works with a slight delay
after pressing, so that you can not instantly kill everyone in the
passage. Thus, attacking players must run from the balcony to the
balcony, trying to calculate the time after the last blow.3) In the sewers there are monsters-defenders loyal to the enemy team in
small numbers, which creates some obstacles on the way.4) Next to the room with the crystal are mounted combat turrets,
attacking the passing players of the enemy team. It's enough just to
activate them at the beginning of the new game (you could see it on my
previous map - Arena R4).5) All obstacles through which you can logically justify a long-range
attack - are shot through.P>S> When creating, only original textures and models were used.
Please rate it if the map is good enough
-
Sample Music Project
.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.
Hello and hi!) My dear colleagues!) Honestly, I do not know if this is the first project
of its kind, but it reached the point when I have something to show.
I have noticed for a long time that there are enough musical instruments in RO,
but there is no variability and the bards are rigidly driven into the framework
of certain song skills. And what if, in the breaks between the endless standing
in a party, casting «A Poem of Bragi», would they want to slightly improvise
on favorite instruments?~~~ About the SMP : ~~~
At the moment the "solo" command only calls up a certain sound sample, animation
of the play on the instrument and emotion, which can be turned off together
with the sound effects in the settings. It is collected exclusively for fun.
For example, playing a show in a RO or conducting a meeting,
you can create a background atmosphere.
(!) All samples are taken from videos that demonstrate the sound of musical instruments on YouTube (!)
The project consists of collected clean samples of musical instruments specially
selected for the style of each instrument, so they can be easily distinguished
from each other, even if it's another guitar. The length of the samples varies
from 3 to 26 seconds, they are all collected in .wav format in good quality.
(video quality is quite low, sorry)~~~ A few statistics that are at the moment : ~~~
+)
821~1000 code lines for «@ solo» command activating samples that everyone can hear within the screen
+)282355 music samples with27533558 sec (~1 hour) of samples duration in total
+) total weight about 500 mb in grf[In Video] 00:05 - Bass Guitar - 46 samples x 515 sec
[In Video] 00:58 - Guitar -17 samples x 155 sec- 21 samples x 274 sec
[In Video] 01:47 - Burning Passion Guitar - 13 samples x 124 sec
[In Video] 02:32 - Loner's Guitar -9 samples x 99 sec- 17 samples x 155 sec
[In Video] 03:15 - Gentle Breeze Guitar - 15 samples x 135 sec
[In Video] 04:13 - Green Acre Guitar - 14 samples x 159 sec
[In Video] 04:45 - Lute/Oriental Lute - 11 samples x 119 sec
[In Video] 05:29 - Mandolin - 11 samples x 88 sec
[In Video] 06:26 - Electric Guitar - 12 samples x 133 sec
[In Video] 07:38 - Berserk Guitar - 17 samples x 147 sec
[In Video] 08:42 - Cello - 20 samples x 210 sec
[In Video] 09:48 - Violin - 26 samples x 211 sec
[In Video] 10:52 - Gumoongoh - 21 samples x 197 sec
[In Video] 12:09 - Harp, Harp of Nepenthes - 21 samples x 221 sec
[In Video] 13:15 - Green Whistle - 18 samples x 129 sec
[In Video] None - Contrabass -11 samples x 111 sec- 16 samples x 169 sec
[In Video] None - Oz's New Ukulele - 13 samples x 131 sec
[In Video] None - Hippie Guitar - 30 samples x 295 sec
[In Video] None - Brute Guitar - 13 samples x 146 sec~~~ About the script part : ~~~
The script was tested on the emulator eAthena, because I was stuck in 2010.
(This script wasn't tested with Herc in the case of this command, but you could test samples with @ sound command I suppose)In src/common/mmo.h :
(w0w!) find these two lines #define WEDDING_RING_M 2634 #define WEDDING_RING_F 2635 (w0w!) add after the variables // @solo #define GUITAR 1907 #define GUITAR2 1908 #define ELE_GUITAR 1913 #define BER_GUITAR 1920 #define BAS_GUITAR 1919 #define FIRE_GUITAR 1914 #define WATER_GUITAR 1915 #define EARTH_GUITAR 1916 #define WIND_GUITAR 1917 #define CELLO 1925 #define GUMOONGOH 1911 #define GUMOONGOH2 1912 #define HARP 1909 #define HARP2 1910 #define HARP_OF_NEP 1926 #define LUTE 1905 #define LUTE2 1906 #define ORI_LUTE 1918 #define ORI_LUTE2 1922 #define MANDOLIN 1903 #define MANDOLIN2 1904 #define VIOLIN 1901 #define VIOLIN2 1902 #define GREEN_WHISTLE 1930 #define CONTRABASS 1934 #define OZ_UKULELE 1935 #define HIPPIE_GUITAR 1944 #define BRUTE_GUITAR 32100
In src/map/atcommand.c :
ACMD_FUNC(solo) { int nameid; struct item_data* id; if(sd->weapontype1==W_MUSICAL) { // Guitar if(pc_isequipped(sd, GUITAR) || pc_isequipped(sd, GUITAR2)) { if(!message || !*message || atoi(message)<1 || atoi(message)>21){ clif_displaymessage(fd, "usage: @solo 1-21"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "gui01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "gui02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "gui03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "gui04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "gui05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "gui06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "gui07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "gui08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "gui09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "gui10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "gui11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "gui12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "gui13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "gui14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "gui15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "gui16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "gui17.wav", 0, AREA); } else if ( atoi(message) == 18 ) { clif_soundeffectall(&sd->bl, "gui18.wav", 0, AREA); } else if ( atoi(message) == 19 ) { clif_soundeffectall(&sd->bl, "gui19.wav", 0, AREA); } else if ( atoi(message) == 20 ) { clif_soundeffectall(&sd->bl, "gui20.wav", 0, AREA); } else if ( atoi(message) == 21 ) { clif_soundeffectall(&sd->bl, "gui21.wav", 0, AREA); } return 0; } // Electric Guitar else if(pc_isequipped(sd, ELE_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>12){ clif_displaymessage(fd, "usage: @solo 1-12"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "ele01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "ele02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "ele03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "ele04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "ele05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "ele06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "ele07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "ele08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "ele09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "ele10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "ele11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "ele12.wav", 0, AREA); } return 0; } // Berserk Guitar else if(pc_isequipped(sd, BER_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>17){ clif_displaymessage(fd, "usage: @solo 1-17"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "ber01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "ber02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "ber03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "ber04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "ber05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "ber06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "ber07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "ber08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "ber09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "ber10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "ber11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "ber12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "ber13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "ber14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "ber15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "ber16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "ber17.wav", 0, AREA); } return 0; } // Bass Guitar else if(pc_isequipped(sd, BAS_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>46){ clif_displaymessage(fd, "usage: @solo 1-46"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "bas01.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "bas02.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "bas03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "bas04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "bas05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "bas06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "bas07.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "bas08.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "bas09.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "bas10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "bas11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "bas12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "bas13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "bas14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "bas15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "bas16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "bas17.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas17.wav", 0, AREA); } else if ( atoi(message) == 18 ) { clif_soundeffectall(&sd->bl, "bas18.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas18.wav", 0, AREA); } else if ( atoi(message) == 19 ) { clif_soundeffectall(&sd->bl, "bas19.wav", 0, AREA); } else if ( atoi(message) == 20 ) { clif_soundeffectall(&sd->bl, "bas20.wav", 0, AREA); } else if ( atoi(message) == 21 ) { clif_soundeffectall(&sd->bl, "bas21.wav", 0, AREA); } else if ( atoi(message) == 22 ) { clif_soundeffectall(&sd->bl, "bas22.wav", 0, AREA); } else if ( atoi(message) == 23 ) { clif_soundeffectall(&sd->bl, "bas23.wav", 0, AREA); } else if ( atoi(message) == 24 ) { clif_soundeffectall(&sd->bl, "bas24.wav", 0, AREA); } else if ( atoi(message) == 25 ) { clif_soundeffectall(&sd->bl, "bas25.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas25.wav", 0, AREA); } else if ( atoi(message) == 26 ) { clif_soundeffectall(&sd->bl, "bas26.wav", 0, AREA); } else if ( atoi(message) == 27 ) { clif_soundeffectall(&sd->bl, "bas27.wav", 0, AREA); } else if ( atoi(message) == 28 ) { clif_soundeffectall(&sd->bl, "bas28.wav", 0, AREA); } else if ( atoi(message) == 29 ) { clif_soundeffectall(&sd->bl, "bas29.wav", 0, AREA); } else if ( atoi(message) == 30 ) { clif_soundeffectall(&sd->bl, "bas30.wav", 0, AREA); } else if ( atoi(message) == 31 ) { clif_soundeffectall(&sd->bl, "bas31.wav", 0, AREA); clif_soundeffectall(&sd->bl, "bas31.wav", 0, AREA); } else if ( atoi(message) == 32 ) { clif_soundeffectall(&sd->bl, "bas32.wav", 0, AREA); } else if ( atoi(message) == 33 ) { clif_soundeffectall(&sd->bl, "bas33.wav", 0, AREA); } else if ( atoi(message) == 34 ) { clif_soundeffectall(&sd->bl, "bas34.wav", 0, AREA); } else if ( atoi(message) == 35 ) { clif_soundeffectall(&sd->bl, "bas35.wav", 0, AREA); } else if ( atoi(message) == 36 ) { clif_soundeffectall(&sd->bl, "bas36.wav", 0, AREA); } else if ( atoi(message) == 37 ) { clif_soundeffectall(&sd->bl, "bas37.wav", 0, AREA); } else if ( atoi(message) == 38 ) { clif_soundeffectall(&sd->bl, "bas38.wav", 0, AREA); } else if ( atoi(message) == 39 ) { clif_soundeffectall(&sd->bl, "bas39.wav", 0, AREA); } else if ( atoi(message) == 40 ) { clif_soundeffectall(&sd->bl, "bas40.wav", 0, AREA); } else if ( atoi(message) == 41 ) { clif_soundeffectall(&sd->bl, "bas41.wav", 0, AREA); } else if ( atoi(message) == 42 ) { clif_soundeffectall(&sd->bl, "bas42.wav", 0, AREA); } else if ( atoi(message) == 43 ) { clif_soundeffectall(&sd->bl, "bas43.wav", 0, AREA); } else if ( atoi(message) == 44 ) { clif_soundeffectall(&sd->bl, "bas44.wav", 0, AREA); } else if ( atoi(message) == 45 ) { clif_soundeffectall(&sd->bl, "bas45.wav", 0, AREA); } else if ( atoi(message) == 46 ) { clif_soundeffectall(&sd->bl, "bas46.wav", 0, AREA); } return 0; } // Burning Passion Guitar else if(pc_isequipped(sd, FIRE_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>13){ clif_displaymessage(fd, "usage: @solo 1-13"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "pas01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "pas02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "pas03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "pas04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "pas05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "pas06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "pas07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "pas08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "pas09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "pas10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "pas11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "pas12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "pas13.wav", 0, AREA); } return 0; } // Loner's Guitar else if(pc_isequipped(sd, WATER_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>17){ clif_displaymessage(fd, "usage: @solo 1-17"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "lon01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "lon02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "lon03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "lon04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "lon05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "lon06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "lon07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "lon08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "lon09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "lon10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "lon11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "lon12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "lon13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "lon14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "lon15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "lon16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "lon17.wav", 0, AREA); } return 0; } // Green Acre Guitar else if(pc_isequipped(sd, EARTH_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>14){ clif_displaymessage(fd, "usage: @solo 1-14"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "acr01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "acr02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "acr03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "acr04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "acr05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "acr06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "acr07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "acr08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "acr09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "acr10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "acr11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "acr12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "acr13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "acr14.wav", 0, AREA); } return 0; } // Gentle Breeze Guitar else if(pc_isequipped(sd, WIND_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>15){ clif_displaymessage(fd, "usage: @solo 1-15"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "bre01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "bre02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "bre03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "bre04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "bre05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "bre06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "bre07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "bre08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "bre09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "bre10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "bre11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "bre12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "bre13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "bre14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "bre15.wav", 0, AREA); } return 0; } // Cello else if(pc_isequipped(sd, CELLO)) { if(!message || !*message || atoi(message)<1 || atoi(message)>20){ clif_displaymessage(fd, "usage: @solo 1-20"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "cel01.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "cel02.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "cel03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "cel04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "cel05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "cel06.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "cel07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "cel08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "cel09.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "cel10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "cel11.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "cel12.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "cel13.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "cel14.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "cel15.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "cel16.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "cel17.wav", 0, AREA); } else if ( atoi(message) == 18 ) { clif_soundeffectall(&sd->bl, "cel18.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel18.wav", 0, AREA); } else if ( atoi(message) == 19 ) { clif_soundeffectall(&sd->bl, "cel19.wav", 0, AREA); clif_soundeffectall(&sd->bl, "cel19.wav", 0, AREA); } else if ( atoi(message) == 20 ) { clif_soundeffectall(&sd->bl, "cel20.wav", 0, AREA); } return 0; } // Gumoongoh else if(pc_isequipped(sd, GUMOONGOH) || pc_isequipped(sd, GUMOONGOH2)) { if(!message || !*message || atoi(message)<1 || atoi(message)>21){ clif_displaymessage(fd, "usage: @solo 1-21"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "geo01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "geo02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "geo03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "geo04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "geo05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "geo06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "geo07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "geo08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "geo09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "geo10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "geo11.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "geo12.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "geo13.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "geo14.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "geo15.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "geo16.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "geo17.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo17.wav", 0, AREA); } else if ( atoi(message) == 18 ) { clif_soundeffectall(&sd->bl, "geo18.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo18.wav", 0, AREA); } else if ( atoi(message) == 19 ) { clif_soundeffectall(&sd->bl, "geo19.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo19.wav", 0, AREA); } else if ( atoi(message) == 20 ) { clif_soundeffectall(&sd->bl, "geo20.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo20.wav", 0, AREA); } else if ( atoi(message) == 21 ) { clif_soundeffectall(&sd->bl, "geo21.wav", 0, AREA); clif_soundeffectall(&sd->bl, "geo21.wav", 0, AREA); } return 0; } // Harp else if(pc_isequipped(sd, HARP) || pc_isequipped(sd, HARP2) || pc_isequipped(sd, HARP_OF_NEP)) { if(!message || !*message || atoi(message)<1 || atoi(message)>21){ clif_displaymessage(fd, "usage: @solo 1-21"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "har01.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "har02.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "har03.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "har04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "har05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "har06.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "har07.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "har08.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "har09.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "har10.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "har11.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "har12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "har13.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "har14.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "har15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "har16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "har17.wav", 0, AREA); } else if ( atoi(message) == 18 ) { clif_soundeffectall(&sd->bl, "har18.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har18.wav", 0, AREA); } else if ( atoi(message) == 19 ) { clif_soundeffectall(&sd->bl, "har19.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har19.wav", 0, AREA); } else if ( atoi(message) == 20 ) { clif_soundeffectall(&sd->bl, "har20.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har20.wav", 0, AREA); } else if ( atoi(message) == 21 ) { clif_soundeffectall(&sd->bl, "har21.wav", 0, AREA); clif_soundeffectall(&sd->bl, "har21.wav", 0, AREA); } return 0; } // Lute else if(pc_isequipped(sd, LUTE) || pc_isequipped(sd, LUTE2) || pc_isequipped(sd, ORI_LUTE) || pc_isequipped(sd, ORI_LUTE2)) { if(!message || !*message || atoi(message)<1 || atoi(message)>11){ clif_displaymessage(fd, "usage: @solo 1-11"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "lut01.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "lut02.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "lut03.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "lut04.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "lut05.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "lut06.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "lut07.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "lut08.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "lut09.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "lut10.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "lut11.wav", 0, AREA); clif_soundeffectall(&sd->bl, "lut11.wav", 0, AREA); } return 0; } // Mandolin else if(pc_isequipped(sd, MANDOLIN) || pc_isequipped(sd, MANDOLIN2)) { if(!message || !*message || atoi(message)<1 || atoi(message)>11){ clif_displaymessage(fd, "usage: @solo 1-11"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "man01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "man02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "man03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "man04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "man05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "man06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "man07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "man08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "man09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "man10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "man11.wav", 0, AREA); } return 0; } // Violin else if(pc_isequipped(sd, VIOLIN) || pc_isequipped(sd, VIOLIN2)) { if(!message || !*message || atoi(message)<1 || atoi(message)>26){ clif_displaymessage(fd, "usage: @solo 1-26"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "vio01.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "vio02.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "vio03.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "vio04.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "vio05.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "vio06.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "vio07.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "vio08.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "vio09.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "vio10.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "vio11.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "vio12.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "vio13.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "vio14.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "vio15.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "vio16.wav", 0, AREA); clif_soundeffectall(&sd->bl, "vio16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "vio17.wav", 0, AREA); } else if ( atoi(message) == 18 ) { clif_soundeffectall(&sd->bl, "vio18.wav", 0, AREA); } else if ( atoi(message) == 19 ) { clif_soundeffectall(&sd->bl, "vio19.wav", 0, AREA); } else if ( atoi(message) == 20 ) { clif_soundeffectall(&sd->bl, "vio20.wav", 0, AREA); } else if ( atoi(message) == 21 ) { clif_soundeffectall(&sd->bl, "vio21.wav", 0, AREA); } else if ( atoi(message) == 22 ) { clif_soundeffectall(&sd->bl, "vio22.wav", 0, AREA); } else if ( atoi(message) == 23 ) { clif_soundeffectall(&sd->bl, "vio23.wav", 0, AREA); } else if ( atoi(message) == 24 ) { clif_soundeffectall(&sd->bl, "vio24.wav", 0, AREA); } else if ( atoi(message) == 25 ) { clif_soundeffectall(&sd->bl, "vio25.wav", 0, AREA); } else if ( atoi(message) == 26 ) { clif_soundeffectall(&sd->bl, "vio26.wav", 0, AREA); } return 0; } // Green Whistle else if(pc_isequipped(sd, GREEN_WHISTLE)) { if(!message || !*message || atoi(message)<1 || atoi(message)>18){ clif_displaymessage(fd, "usage: @solo 1-18"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "gre01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "gre02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "gre03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "gre04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "gre05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "gre06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "gre07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "gre08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "gre09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "gre10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "gre11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "gre12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "gre13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "gre14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "gre15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "gre16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "gre17.wav", 0, AREA); } else if ( atoi(message) == 18 ) { clif_soundeffectall(&sd->bl, "gre18.wav", 0, AREA); } return 0; } // Contrabass else if(pc_isequipped(sd, CONTRABASS)) { if(!message || !*message || atoi(message)<1 || atoi(message)>16){ clif_displaymessage(fd, "usage: @solo 1-16"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "con01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "con02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "con03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "con04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "con05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "con06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "con07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "con08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "con09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "con10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "con11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "con12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "con13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "con14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "con15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "con16.wav", 0, AREA); } return 0; } // Oz's New Ukulele else if(pc_isequipped(sd, OZ_UKULELE)) { if(!message || !*message || atoi(message)<1 || atoi(message)>13){ clif_displaymessage(fd, "usage: @solo 1-13"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "ozs01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "ozs02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "ozs03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "ozs04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "ozs05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "ozs06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "ozs07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "ozs08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "ozs09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "ozs10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "ozs11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "ozs12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "ozs13.wav", 0, AREA); } return 0; } // Hippie Guitar else if(pc_isequipped(sd, HIPPIE_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>30){ clif_displaymessage(fd, "usage: @solo 1-30"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "hip01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "hip02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "hip03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "hip04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "hip05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "hip06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "hip07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "hip08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "hip09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "hip10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "hip11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "hip12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "hip13.wav", 0, AREA); } else if ( atoi(message) == 14 ) { clif_soundeffectall(&sd->bl, "hip14.wav", 0, AREA); } else if ( atoi(message) == 15 ) { clif_soundeffectall(&sd->bl, "hip15.wav", 0, AREA); } else if ( atoi(message) == 16 ) { clif_soundeffectall(&sd->bl, "hip16.wav", 0, AREA); } else if ( atoi(message) == 17 ) { clif_soundeffectall(&sd->bl, "hip17.wav", 0, AREA); } else if ( atoi(message) == 18 ) { clif_soundeffectall(&sd->bl, "hip18.wav", 0, AREA); } else if ( atoi(message) == 19 ) { clif_soundeffectall(&sd->bl, "hip19.wav", 0, AREA); } else if ( atoi(message) == 20 ) { clif_soundeffectall(&sd->bl, "hip20.wav", 0, AREA); } else if ( atoi(message) == 21 ) { clif_soundeffectall(&sd->bl, "hip21.wav", 0, AREA); } else if ( atoi(message) == 22 ) { clif_soundeffectall(&sd->bl, "hip22.wav", 0, AREA); } else if ( atoi(message) == 23 ) { clif_soundeffectall(&sd->bl, "hip23.wav", 0, AREA); } else if ( atoi(message) == 24 ) { clif_soundeffectall(&sd->bl, "hip24.wav", 0, AREA); } else if ( atoi(message) == 25 ) { clif_soundeffectall(&sd->bl, "hip25.wav", 0, AREA); } else if ( atoi(message) == 26 ) { clif_soundeffectall(&sd->bl, "hip26.wav", 0, AREA); } else if ( atoi(message) == 27 ) { clif_soundeffectall(&sd->bl, "hip27.wav", 0, AREA); } else if ( atoi(message) == 28 ) { clif_soundeffectall(&sd->bl, "hip28.wav", 0, AREA); } else if ( atoi(message) == 29 ) { clif_soundeffectall(&sd->bl, "hip29.wav", 0, AREA); } else if ( atoi(message) == 30 ) { clif_soundeffectall(&sd->bl, "hip30.wav", 0, AREA); } return 0; } // Brute Guitar else if(pc_isequipped(sd, BRUTE_GUITAR)) { if(!message || !*message || atoi(message)<1 || atoi(message)>13){ clif_displaymessage(fd, "usage: @solo 1-13"); return -1; } clif_emotion(&sd->bl, E_HO); clif_skill_nodamage(&sd->bl,&sd->bl,317,-1,1); if ( atoi(message) == 1 ) { clif_soundeffectall(&sd->bl, "bru01.wav", 0, AREA); } else if ( atoi(message) == 2 ) { clif_soundeffectall(&sd->bl, "bru02.wav", 0, AREA); } else if ( atoi(message) == 3 ) { clif_soundeffectall(&sd->bl, "bru03.wav", 0, AREA); } else if ( atoi(message) == 4 ) { clif_soundeffectall(&sd->bl, "bru04.wav", 0, AREA); } else if ( atoi(message) == 5 ) { clif_soundeffectall(&sd->bl, "bru05.wav", 0, AREA); } else if ( atoi(message) == 6 ) { clif_soundeffectall(&sd->bl, "bru06.wav", 0, AREA); } else if ( atoi(message) == 7 ) { clif_soundeffectall(&sd->bl, "bru07.wav", 0, AREA); } else if ( atoi(message) == 8 ) { clif_soundeffectall(&sd->bl, "bru08.wav", 0, AREA); } else if ( atoi(message) == 9 ) { clif_soundeffectall(&sd->bl, "bru09.wav", 0, AREA); } else if ( atoi(message) == 10 ) { clif_soundeffectall(&sd->bl, "bru10.wav", 0, AREA); } else if ( atoi(message) == 11 ) { clif_soundeffectall(&sd->bl, "bru11.wav", 0, AREA); } else if ( atoi(message) == 12 ) { clif_soundeffectall(&sd->bl, "bru12.wav", 0, AREA); } else if ( atoi(message) == 13 ) { clif_soundeffectall(&sd->bl, "bru13.wav", 0, AREA); } return 0; } } }
In src/map/atcommand.c also don't forget to add :
{ "solo", 0,0, atcommand_solo }, // solo
[Download Link: https://www.mediafire.com/folder/pwcyadczve81h/sample_music_project]
[The map used in this video - Barcode]
-
Xpalace
File Name: prtbar
File Submitter: w0wZukuBg
File Submitted: 17 June 2018
File Category: Maps & Textures
Download Link: Click here to downloadSpoilerA small winter hall for showing performances of figure skating.
A large number of spectator seats, the only disadvantage is that
it is necessary to expand the area_size configuration, if it is possible
to do it within one location (to make an additional configuration), then
the flaw will turn into an advantage. Added a place for two trade npcs,
so that you can have a snack during the intermission. Used non-original
textures. The second part of the video demonstrates the performance
of the figure skater.Minor changes since the video recording:
Fixed a column at the entrance and the main chandelier shone with lights..•°'°•.
-
Sorry for the double posting, I decided to spam a little this section)))
Always dreamed of making a bar in the world of RO. Not an ordinary one,
there are a lot of bars, but modern with a dance floor and a disco.
And, it happened so that now I have two bars made in this way.
You can find my previous bar release here: Click here to go.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.
barcode
SpoilerThis barcode is more informal. It is no longer connected stylistically
with any city. Holds in a larger number of players, there is even a scene
with a microphone, where you can perform standup or something like
that. I really like the updated dance floor and an awkward toy in a small
pool. It was possible to make so that the player was highlighted by
different colors. When creating, non-original textures were also used..•°'°•..•°'°•.
Please rate it if the map is good enough
-
prtbar
File Name: prtbar
File Submitter: w0wZukuBg
File Submitted: 17 June 2018
File Category: Maps & Textures
Download Link: Click here to downloadSpoilerMy first bar made for the new Prontera. There is more subdued lighting,
some small details (candles, steam from mugs, a complex lightmap), custom
textures (you may change these to another ones). The location was created
in the autumn, so it affected its appearance. In general, it looks rather
reserved in details and colors, a quiet place to gather for an official meeting.(!) You may need new Prontera, Malaya, Malangdo or Dewata staff.
.•°'°•..•°'°•.
-
ein_tra01 & lhz_tra01
.•°'°•.
File Name: ein_tra01 & lhz_tra01
File Submitter: w0wZukuBg
File Submitted: 04 June 2018
File Category: Maps & Textures
Download Link: Click here to downloadSpoilerJust two locations, with which you can simulate a trip by train.
There are at least 3 stations between 2.5 cities. As a result,
a route appeared, linking Lighthalzen, Einbroch and Einbech.
The script is based on a flight script on an airship. You can
take a very small fee for the trip, in order to compete somehow
with teleportation servicesP>S> You may need materials of NewProntera, Malaya and Malangdo.
-
I decided to dedicate this topic to my first location only,
stay tuned for updates in new topics -
On 22.01.2014 at 0:09 AM, Olrox said:2 - If you want to remove global shadow in all your models:
The RSM models has a function to get this global shadow in 3 possible ways:
Using an hex editor, please look for that offset and change 01 to 00, this disables global shadows in your RSM model. Alternatively, if you want, you can also ad the value 02 to enable smoth shadows in models if I remember well.
Hello, the pictures are broken, does anyone have the information, what
line should I change in the hex editor to remove global shadows on all models? -
-
Check out my next release - a bar for a new Prontera
in autumn style here: -
-
On 26.05.2018 at 7:46 PM, luizragna said:What is this yellow barreier effect?
Hello, I found this object at 1 @ rev when I looked through the list of
of kRO locations. I liked it, it's more like an effect. This barrier on
my map is marked by cells through which you can only shoot.
And you can enter the zone only from the north side.On 27.05.2018 at 11:44 AM, Ridley said:nice, mappers are rare nowadays
Hi, I decided to support the section a little
-
Hello and Hi!) I'm new here!)
And I just want to show you my first map made in BrowEdit <3
This map was created for my server, but it was closed, because nobody played it :С
P.S. Feel free to comment/ask or let me know what you need to correct..•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.
arena_r4
As you can see, the location is quite simple, but it is rather advanced.
The script consists of 1110 lines and there are attempts to play with
the height. It's all because, in fact, the original idea was to make
a real training center out of it. But something went wrong, and it
became a test platform for pvp).•°'°•..•°'°•.
Since the creation of the video, some corrections have been made, for
example, instead of saws in the floor, a real column of death appeared.
And after death in the cosmic area, now the player is not visible under the texture..•°'°•..•°'°•.
Please rate it if the map is good enough
w0w: My Custom Items
in Spriting & Palette Releases
Posted · Edited by w0wZukuBg
File Name:
w0w_custom_collection
File Submitter: w0wZukuBg
File Submitted: 24 June 2018
File Category: Spriting & Palette
Download Link: Click here to download
.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.
butterfly_wings [x5 new]
Look at the old butterfly wing and at it. Now again on the old and on the new.
Why is my butterfly wing looks like a wing, not a human ear? = D
I would be happy if you would prefer my work for replacement.
battle_manuals [x5 new]
Recolor to diversify the rates.
bubble_gums [x5 new]
Recolor to diversify the rates.
bullets [x6 new]
Just additional sprites of bullets based on standard.
Fire, Water, Wind, Earth, Poison and Shadow property.
card_sprites [x3 new]
Now rare cards will really decorate your inventory (:
1 - for miniboss cards
2 - for yellow MVP cards
3 - for red MVP cards
w0w_items [x6 new]
1 - Armor Charm [ID 2656] - make it's own sprite instead of the Gravity...
2 - Very Old Card Album [ID custom] - just an idea, make an item sprite according to second collection picture.
3 - Animal Detector [ID custom] - the idea came from the game BG&E.
4 - Venatu Doll [ID custom] - it can be an item for pet/mercenary activation or just a doll.
5 - Camera [ID custom] - the file includes small ingame illustration of camera.
6 - Condenced Blue Potion [ID custom] - nuff said ~
gemmed_sallet [new]
Could not wait any longer, just add a ingame hat animation
made by myself instead of Gravity :3
dullahan [white eyes]
In one of the client updates the sprite Dullahan was changed. Since then, his eyes
have disappeared. Gravity did not comment on what had happened. Very much I
ask to check up this monster on your server and to replace a sprite in case of
need.
>>>>>
w0w_cardbmp [x6 new]
You can use this art work for any purpose, for example, you can make it a card on your server.
sl_icons [x2 new]
Two new icons for SL_GUNNER and SL_NINJA skills
Since the icons use Chinese characters, then
for the SL_GUNNER, the 枪 means a gun
and for the SL_NINJA I left the character out of skill Final Strike
.•°'°•.
skating_grf [new]
Just added edited santa costume sprite for imitation of skating (based on 여름 summer clothes sprite v1).
You may see the sample of skating in my custom map Xpalace preview: Link here
blood_tears [new]
My first attempt to make a custom version of any weapon. The basis was taken Blood Tears [id 1271].
.•°'°•.
~ Don't claim my or Gravity's work as yours and etc ~