Advertisement
Guest User

Untitled

a guest
Aug 5th, 2015
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.95 KB | None | 0 0
  1. //****************************************************************************
  2. // SPHERE by : Menasoft ©1997-2007
  3. // www.sphereserver.net
  4. // All SPHERE script files and formats are copyright Menasoft & Partners.
  5. // This file may be freely edited for personal use, but may not be distributed
  6. // in whole or in part, in any format without express written permission from
  7. // Menasoft & Partners. All donations and contributions
  8. // become the property of Menasoft & Partners.
  9. //****************************************************************************
  10. // FILE LAST UPDATED: Sunday, October 6, 2013
  11. //
  12. VERSION=0.56c
  13.  
  14.  
  15. [SPEECH spk_player]
  16. // All players speech filtered through here.
  17. ON=*
  18. IF (<dARGN1> == 13) && (<GUILD>)
  19. F_CHAT_SEND_BUTTON 3,CHATGUILD,<UID>,<ARGS>
  20. ELIF (<dARGN1> == 0)
  21. IF STRMATCH(*<STRSUB 0 1 <ARGS>>*,*<DEF.cfg.PARTY.CHAT.PREFIX>*)
  22. ARGS <STRSUB 1 <EVAL STRLEN(<ARGS>)-1> <ARGS>>
  23. IF STRMATCH(ADD,<ARGS>)
  24. PARTYADD
  25. RETURN 1
  26. ELIF STRMATCH(QUIT,<ARGS>)
  27. PARTYQUIT
  28. RETURN 1
  29. ELIF STRMATCH(ACCEPT,<ARGS>)
  30. PARTYACCEPT
  31. DIALOG_CLOSE D_PARTY_ACCEPT
  32. RETURN 1
  33. ELIF STRMATCH(DECLINE,<ARGS>)
  34. PARTYDECLINE
  35. DIALOG_CLOSE D_PARTY_ACCEPT
  36. RETURN 1
  37. ELSE
  38. IF (!<ISEMPTY <ARGS>>) && (<F_ISINPARTY>) && (!<dTAG0.PARTY.MSGDELAY>)
  39. F_PARTY_MSG_ALL @044,,1 [PARTY][<NAME>]: <ARGS>
  40. F_CHAT_SEND_BUTTON 2,CHATPARTY,<UID>,<ARGS>
  41. TAG0.PARTY.MSGDELAY 1
  42. TIMERF <dDEF.cfg.PARTY.PM.DELAY>,TAG0.PARTY.MSGDELAY
  43. RETURN 1
  44. ENDIF
  45. ENDIF
  46. ELSE
  47. F_CHAT_SEND_BUTTON 4,CHATGENERAL,<ARGS>
  48. ENDIF
  49. ENDIF
  50. RETURN 0
  51.  
  52. ON=home home home // Ghosts can go home.
  53. IF (<FLAGS>&statf_dead)
  54. go <home>
  55. endif
  56.  
  57. ON=I must consider my sins
  58.  
  59. ON=I resign from my guild
  60.  
  61. ON=I resign from my town
  62.  
  63. ON=*Guard help *
  64. ON=*Guards*
  65. ON=*Help Guards*
  66. // trying to call guards for help.
  67.  
  68. /////////////// house24.scp den alındı
  69.  
  70. ON=*lock this*
  71. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  72. src.targetf, f_lock
  73. src.sysmessage @,,1 What do you wish to lockdown?
  74. return 1
  75. else
  76. src.sysmessage @32,,1 You must be in your house to do that.
  77. return 1
  78. endif
  79.  
  80. ON=*unlock this*
  81. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  82. src.targetf, f_lock
  83. src.sysmessage @,,1 What do you wish to release?
  84. return 1
  85. else
  86. src.sysmessage @32,,1 You must be in your house to do that.
  87. return 1
  88. endif
  89.  
  90. ON=*secure this*
  91. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  92. src.targetf, f_secure
  93. src.sysmessage @,,1 What do you wish to secure?
  94. return 1
  95. else
  96. src.sysmessage @32,,1 You must be in your house to do that.
  97. return 1
  98. endif
  99.  
  100. ON=*unsecure this*
  101. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  102. src.targetf, f_secure
  103. src.sysmessage @,,1 What do you wish to release?
  104. return 1
  105. else
  106. src.sysmessage @32,,1 You must be in your house to do that.
  107. return 1
  108. endif
  109.  
  110. ON=*move north*
  111. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  112. src.targetf, f_moven
  113. src.sysmessage @,,1 What do you wish to move?
  114. return 1
  115. else
  116. src.sysmessage @32,,1 You must be in your house to do that.
  117. return 1
  118. endif
  119.  
  120. ON=*move south*
  121. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  122. src.targetf, f_moves
  123. src.sysmessage @,,1 What do you wish to move?
  124. return 1
  125. else
  126. src.sysmessage @32,,1 You must be in your house to do that.
  127. return 1
  128. endif
  129.  
  130. ON=*move east*
  131. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  132. src.targetf, f_movee
  133. src.sysmessage @,,1 What do you wish to move?
  134. return 1
  135. else
  136. src.sysmessage @32,,1 You must be in your house to do that.
  137. return 1
  138. endif
  139.  
  140. ON=*move west*
  141. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  142. src.targetf, f_movew
  143. src.sysmessage @,,1 What do you wish to move?
  144. return 1
  145. else
  146. src.sysmessage @32,,1 You must be in your house to do that.
  147. return 1
  148. endif
  149.  
  150. ON=*raise this*
  151. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  152. src.targetf, f_raise
  153. src.sysmessage @,,1 What do you wish to raise?
  154. return 1
  155. else
  156. src.sysmessage @32,,1 You must be in your house to do that.
  157. return 1
  158. endif
  159.  
  160. ON=*lower this*
  161. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  162. src.targetf, f_lower
  163. src.sysmessage @,,1 What do you wish to lower?
  164. return 1
  165. else
  166. src.sysmessage @32,,1 You must be in your house to do that.
  167. return 1
  168. endif
  169.  
  170. ON=*flip this*
  171. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  172. src.targetf, f_flip
  173. src.sysmessage @,,1 What do you wish to flip?
  174. return 1
  175. else
  176. src.sysmessage @32,,1 You must be in your house to do that.
  177. return 1
  178. endif
  179.  
  180. ON=*release this*
  181. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  182. src.targetf, f_release
  183. src.sysmessage @,,1 What do you wish to release?
  184. return 1
  185. else
  186. src.sysmessage @32,,1 You must be in your house to do that.
  187. return 1
  188. endif
  189.  
  190. ON=*bank*
  191. if !<src.isgm>
  192. if <def.can_bank>
  193. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.is_friend>) || (<src.isgm>)
  194. src.bankself
  195. src.sysmessage You have <src.bankbalance> gold in your Bank Box
  196. else
  197. return 0
  198. endif
  199. endif
  200. else
  201. src.bankself
  202. return 0
  203. endif
  204.  
  205. ON=*eject*
  206. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.is_friend>) || (<src.isgm>)
  207. src.targetf, f_eject
  208. else
  209. return 0
  210. endif
  211.  
  212. ON=Ban Person
  213. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  214. src.targetf, f_add_ban
  215. else
  216. return 0
  217. endif
  218.  
  219. ON=Place trashcan
  220. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  221. ref1=<src.region.tag0.sign>
  222. if (<ref1.tag0.trashcan>)
  223. src.sysmessage @32,,1 You already have a trashcan.
  224. return 1
  225. else
  226. serv.newitem i_trashcan
  227. new.p=<src.p>
  228. new.attr=attr_move_never
  229. ref1.tag0.trashcan=<new.uid>
  230. endif
  231. else
  232. return 0
  233. endif
  234.  
  235.  
  236. ON=Remove trashcan
  237. if <QVAL <def.account_ownership>? (<src.acc_is_owner>):(<src.is_owner>)> || (<src.is_coowner>) || (<src.isgm>)
  238. ref1=<src.region.tag0.sign>
  239. if (<ref1.tag0.trashcan>)
  240. try uid.<ref1.tag0.trashcan>.remove
  241. ref1.tag.trashcan=
  242. else
  243. src.sysmessage @32,,1 You have no trashcan to remove.
  244. return 1
  245. endif
  246. else
  247. return 0
  248. endif
  249.  
  250.  
  251. ON=*house commands*
  252. src.sdialog d_house_commands
  253.  
  254. /////////////////////////////
  255.  
  256. [SPEECH spk_pet]
  257. ON=TRANSFER
  258. IF (<memoryfindtype.memory_war_targ>)
  259. src.sysmessage You can't transfer an animal while it's attacking something.
  260. return 1
  261. ENDIF
  262. IF (<TAG0.SALARY>)
  263. RETURN 1
  264. ENDIF
  265. IF (<ISEVENT.e_animated_dead>) || (<TAG0.NOCONTROL>)
  266. RETURN 1
  267. ENDIF
  268. IF (!(<FLAGS>&STATF_CONJURED))
  269. FINDID.i_pet_rampage.REMOVE
  270. SRC.ANIMALTRANSFER <UID>
  271. ENDIF
  272. RETURN 1
  273.  
  274. ON=FRIEND
  275. RETURN 1
  276.  
  277. ON=RELEASE
  278. IF (<ISEVENT.e_animated_dead>) || (<TAG0.NOCONTROL>)
  279. RETURN 1
  280. ENDIF
  281. IF (<TAG0.SALARY>)
  282. RETURN 1
  283. ENDIF
  284.  
  285. IF (<TAG0.ESCORTED>)
  286. REF1=<FINDID.i_questsys_escorted>
  287. REF2=<REF1.MORE1>
  288. WHILE (<LOCAL.QUEST> != <REF1.MORE2>)
  289. LOCAL.QUEST=<REF2.TAG0.QUEST<dLOCAL._WHILE>.ID>
  290. LOCAL.QUESTRIGHT=<LOCAL._WHILE>
  291. ENDWHILE
  292. REF2.QUITQUEST <LOCAL.QUESTRIGHT>
  293. RETURN 1
  294. ENDIF
  295.  
  296. IF (!(<FLAGS>&STATF_CONJURED))
  297. IF ((<ISEVENT.e_bonded>) && (<FLAGS>&STATF_INVUL))
  298. SRC.SYSMESSAGE @946,3,1 You can't release a dead bonded animal!
  299. RETURN 1
  300. ENDIF
  301. IF (<memoryfindtype.memory_war_targ>)
  302. src.sysmessage You can't release a pet that is attacking someone.
  303. return 1
  304. ENDIF
  305. TRIGGER @PetDesert
  306. IF (<TAG0.BONDEDTIME>)
  307. TAG.BONDEDTIME
  308. ENDIF
  309. FINDID.i_pet_rampage.REMOVE
  310. RELEASE
  311. RETURN 1
  312. ELSE
  313. RETURN 1
  314. ENDIF
  315.  
  316. ON=GO
  317. IF (<ISEVENT.e_animated_dead>) || (<TAG0.NOCONTROL>)
  318. RETURN 1
  319. ENDIF
  320. IF (<TAG0.SALARY>)
  321. RETURN 1
  322. ENDIF
  323. IF (<SRC.FLAGS>&STATF_DEAD)
  324. RETURN 1
  325. ENDIF
  326. IF (<BASEID> == c_revenant)
  327. RETURN 1
  328. ENDIF
  329. IF (!(<FLAGS>&STATF_CONJURED))
  330. FLOAT.CONTROLCHANCE=<FLOATVAL (<F_PETCONTROL <REF1>>/100)>
  331. IF (<FLOAT.CONTROLCHANCE> <= <RANDOMDOUBLE>) && (85 >= <R1,100>)
  332. MESSAGE @,,2 1043255,<NAME>
  333. TRIGGER @PetDesert
  334. RELEASE
  335. RETURN 1
  336. ENDIF
  337. ENDIF
  338. FINDID.i_pet_rampage.REMOVE
  339. REMOVEALLMEMS MEMORY_FIGHT
  340. REMOVEALLMEMS MEMORY_WAR_TARG
  341. FLAGS &= ~<DEF.STATF_WAR>
  342. HOME -1,-1
  343.  
  344. ON=kill
  345. ON=Attack
  346. IF (<TAG0.NOCONTROL>)
  347. RETURN 1
  348. ENDIF
  349. IF (<TAG0.SALARY>)
  350. RETURN 1
  351. ENDIF
  352. IF (<SRC.FLAGS>&STATF_DEAD)
  353. RETURN 1
  354. ENDIF
  355. FINDID.i_pet_rampage.REMOVE
  356. FLAGS |= <DEF.STATF_WAR>
  357.  
  358. ON=STAY
  359. IF (<ISEVENT.e_animated_dead>) || (<TAG0.NOCONTROL>)
  360. RETURN 1
  361. ENDIF
  362. IF (!(<FLAGS>&STATF_CONJURED))
  363. FLOAT.CONTROLCHANCE=<FLOATVAL (<F_PETCONTROL <REF1>>/100)>
  364. IF (<FLOAT.CONTROLCHANCE> <= <RANDOMDOUBLE>) && (85 >= <R1,100>)
  365. MESSAGE @,,2 1043255,<NAME>
  366. TRIGGER @PetDesert
  367. RELEASE
  368. RETURN 1
  369. ENDIF
  370. ENDIF
  371. FINDID.i_pet_rampage.REMOVE
  372. REMOVEALLMEMS MEMORY_FIGHT
  373. REMOVEALLMEMS MEMORY_WAR_TARG
  374. FLAGS &= ~<DEF.STATF_WAR>
  375. ACTION=064
  376.  
  377. ON=STOP
  378. IF (<ISEVENT.e_animated_dead>) || (<TAG0.NOCONTROL>)
  379. RETURN 1
  380. ENDIF
  381. IF (!(<FLAGS>&STATF_CONJURED))
  382. FLOAT.CONTROLCHANCE=<FLOATVAL (<F_PETCONTROL <REF1>>/100)>
  383. IF (<FLOAT.CONTROLCHANCE> <= <RANDOMDOUBLE>) && (85 >= <R1,100>)
  384. MESSAGE @,,2 1043255,<NAME>
  385. TRIGGER @PetDesert
  386. RELEASE
  387. RETURN 1
  388. ENDIF
  389. ENDIF
  390. FINDID.i_pet_rampage.REMOVE
  391. REMOVEALLMEMS MEMORY_FIGHT
  392. REMOVEALLMEMS MEMORY_WAR_TARG
  393. FLAGS &= ~<DEF.STATF_WAR>
  394. ACTION=064
  395.  
  396. ON=DROP
  397. IF (<ISEVENT.e_animated_dead>)
  398. RETURN 1
  399. ENDIF
  400.  
  401. ON=GUARD ME
  402. IF (<ISEVENT.e_animated_dead>) || (<TAG0.NOCONTROL>)
  403. RETURN 1
  404. ENDIF
  405. IF (!(<FLAGS>&STATF_CONJURED))
  406. FLOAT.CONTROLCHANCE=<FLOATVAL (<F_PETCONTROL <REF1>>/100)>
  407. IF (<FLOAT.CONTROLCHANCE> <= <RANDOMDOUBLE>) && (85 > <R100>)
  408. MESSAGE @,,2 1043255,<NAME>
  409. TRIGGER @PetDesert
  410. RELEASE
  411. RETURN 1
  412. ENDIF
  413. ENDIF
  414. IF (!(<FINDID.i_pet_rampage>))
  415. LOCAL.OLDNEW=<NEW>
  416. SERV.NEWITEM=i_pet_rampage,1,<UID>
  417. NEW.TIMER=1
  418. NEW=<LOCAL.OLDNEW>
  419. ENDIF
  420.  
  421. ON=GUARD
  422. IF (<ISEVENT.e_animated_dead>) || (<TAG0.NOCONTROL>)
  423. RETURN 1
  424. ENDIF
  425. IF (!(<FLAGS>&STATF_CONJURED))
  426. FLOAT.CONTROLCHANCE=<FLOATVAL (<F_PETCONTROL <REF1>>/100)>
  427. IF (<FLOAT.CONTROLCHANCE> <= <RANDOMDOUBLE>) && (85 > <R100>)
  428. MESSAGE @,,2 1043255,<NAME>
  429. TRIGGER @PetDesert
  430. RELEASE
  431. RETURN 1
  432. ENDIF
  433. ENDIF
  434. IF (!(<FINDID.i_pet_rampage>))
  435. LOCAL.OLDNEW=<NEW>
  436. SERV.NEWITEM=i_pet_rampage,1,<UID>
  437. NEW.TIMER=1
  438. NEW=<LOCAL.OLDNEW>
  439. ENDIF
  440.  
  441. ON=FOLLOW
  442. ON=COME
  443. IF (<ISEVENT.e_animated_dead>) || (<TAG0.NOCONTROL>)
  444. RETURN 1
  445. ENDIF
  446. IF (!(<FLAGS>&STATF_CONJURED))
  447. FLOAT.CONTROLCHANCE=<FLOATVAL (<F_PETCONTROL <REF1>>/100)>
  448. IF (<FLOAT.CONTROLCHANCE> <= <RANDOMDOUBLE>) && (85 > <R100>)
  449. MESSAGE @,,2 1043255,<NAME>
  450. TRIGGER @PetDesert
  451. RELEASE
  452. RETURN 1
  453. ENDIF
  454. ENDIF
  455. FINDID.i_pet_rampage.REMOVE
  456. REMOVEALLMEMS MEMORY_FIGHT
  457. REMOVEALLMEMS MEMORY_WAR_TARG
  458. FLAGS &= ~<DEF.STATF_WAR>
  459. FACE <SRC.UID>
  460. WALK <DIR>
  461. ACTION=064
  462.  
  463.  
  464. [SPEECH spk_pet]
  465. // Pets that cannot talk
  466. ON=ATTACK
  467. ON=COME
  468. ON=DEFEND ME
  469. ON=DISMISS
  470. ON=DROP // "GIVE" ?
  471. ON=DROP ALL
  472. ON=FETCH
  473. ON=FOLLOW
  474. ON=FOLLOW ME
  475. ON=FRIEND
  476. ON=GO
  477. ON=GUARD
  478. ON=GUARD ME
  479. ON=KILL
  480. ON=RELEASE
  481. ON=SPEAK
  482. ON=STAY
  483. ON=STAY HERE
  484. ON=STOP
  485. ON=TRANSFER
  486.  
  487. [SPEECH spk_hireling]
  488. // Pets that can talk.
  489. ON=ATTACK
  490. ON=BOUGHT
  491. ON=CASH
  492. ON=COME
  493. ON=DEFEND ME
  494. ON=DISMISS
  495. ON=DROP // "GIVE" ?
  496. ON=DROP ALL
  497. ON=EQUIP
  498. ON=EQUIP ALL
  499. ON=FETCH
  500. ON=FOLLOW
  501. ON=FOLLOW ME
  502. ON=FRIEND
  503. RETURN 1
  504. ON=GET DRESSED
  505. ON=GO
  506. ON=GUARD
  507. ON=GUARD ME
  508. ON=INVENTORY
  509. ON=KILL
  510. ON=PRICE // may have args ?
  511. ON=RECIEVED
  512. ON=RELEASE
  513. ON=SAMPLES
  514. ON=SPEAK
  515. ON=STATUS
  516. ON=STAY
  517. ON=STAY HERE
  518. ON=STOCK
  519. ON=STOP
  520. ON=SUIT UP
  521. ON=TRANSFER
  522.  
  523.  
  524. [EOF]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement