w0wZukuBg Posted June 21, 2018 Group: Members Topic Count: 39 Topics Per Day: 0.01 Content Count: 89 Reputation: 298 Joined: 06/07/17 Last Seen: April 15 Share Posted June 21, 2018 (edited) 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 +) 282 355 music samples with 2753 3558 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. (There should be no difference with rA in the case of this command, please report if any) In src/common/mmo.hpp : (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.cpp : 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.cpp 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] Edited September 2, 2018 by w0wZukuBg Released - 01.09.18 1 1 Quote Link to comment Share on other sites More sharing options...
Vykimo Posted June 22, 2018 Group: Members Topic Count: 23 Topics Per Day: 0.00 Content Count: 236 Reputation: 189 Joined: 11/27/11 Last Seen: August 4, 2024 Share Posted June 22, 2018 Good idea. A good application could be to add a skill "solo" that play your sound depending on what kind of weapon the clown is wearing. You could add whatever status effect (heal zone or else). 1 Quote Link to comment Share on other sites More sharing options...
w0wZukuBg Posted June 22, 2018 Group: Members Topic Count: 39 Topics Per Day: 0.01 Content Count: 89 Reputation: 298 Joined: 06/07/17 Last Seen: April 15 Author Share Posted June 22, 2018 I just noticed that I messed up everything. According to the big images, a simple «Guitar» is actually classical. The «Loner's Guitar» is acoustic, and I added ukulele samples to this, because the item looked very small I'll fix it all. 10 hours ago, Vykimo said: A good application could be to add a skill "solo" that play your sound depending on what kind of weapon the clown is wearing. You could add whatever status effect (heal zone or else). This will be the best option, but I don't know how to correlate the length of the sound fragment with the delay of skill... To avoid spamming big fragments. Quote Link to comment Share on other sites More sharing options...
Vykimo Posted June 24, 2018 Group: Members Topic Count: 23 Topics Per Day: 0.00 Content Count: 236 Reputation: 189 Joined: 11/27/11 Last Seen: August 4, 2024 Share Posted June 24, 2018 You could add a skill cooldown 1 Quote Link to comment Share on other sites More sharing options...
w0wZukuBg Posted September 2, 2018 Group: Members Topic Count: 39 Topics Per Day: 0.01 Content Count: 89 Reputation: 298 Joined: 06/07/17 Last Seen: April 15 Author Share Posted September 2, 2018 Hello, rA! I'm sharing this funny project now ) [Download Link: https://www.mediafire.com/folder/pwcyadczve81h/sample_music_project] All code lines for @ solo command are in the main post and in .txt format from the link above (tested only on eA) Quote Link to comment Share on other sites More sharing options...
DrTheGodness Posted February 20, 2021 Group: Members Topic Count: 0 Topics Per Day: 0 Content Count: 1 Reputation: 0 Joined: 02/20/21 Last Seen: February 20, 2021 Share Posted February 20, 2021 I also have a music project for smart phone devices. It is currently doing very well and is very actively welcomed by the music quality and the user is completely free to use. you can refer to my project called Dzwonkinatelefon.pl and let me evaluate as you experience Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.