Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::Development > Archive::Database/World Building

Archive::Database/World Building Archive area for General Discussion's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #1  
Old 07-15-2004, 11:45 AM
Kode Black
Sarnak
 
Join Date: Jun 2004
Posts: 58
Default To disable spell casting in a zone?

I am currently learning C++ and I know sql... though I imagine it needs to be done with C++ in the source...
Anyway, does anyone have any information/resources or ideas on how to disable spell casting or to specifically disable certian spells in a zone?
For example to disable the use of teleports and gates in plane of justice...or to just simply disable spell casting.

Thanks in advance...
Reply With Quote
  #2  
Old 07-15-2004, 02:26 PM
animepimp
Dragon
 
Join Date: Jan 2004
Posts: 860
Default

This would definitely need custom code. The method that handles cast spell requests would just need to check the zone id before it processed anything for the spell.
Reply With Quote
  #3  
Old 07-15-2004, 04:21 PM
Shadow-Wolf
Dragon
 
Join Date: Oct 2003
Posts: 511
Default

actualy i believer that info is handled by the spell themselves.
__________________
How about the power to kill a yak from 200 yards away...WITH MIND BULLETS! thats telekinesis kyle.
Reply With Quote
  #4  
Old 07-16-2004, 04:15 AM
Draupner
Hill Giant
 
Join Date: Jul 2004
Location: In my basement
Posts: 131
Default

its in client_process.cpp OP_Castspell
Reply With Quote
  #5  
Old 07-16-2004, 11:55 AM
Kode Black
Sarnak
 
Join Date: Jun 2004
Posts: 58
Default

I'm not too good with C++, I'll use the weekend to try and figure out the syntax, but basically it would need to be an "if" line of if zone=soandso... in proper syntax ofcourse?
Or does it need to be an if line with specification if "if" is met... I was looking at the syntax of other lines near it and assumed it would automatically end the cast spell if the "if" was met, unless "break" was to end the cast if "if" was met.
Reply With Quote
  #6  
Old 07-18-2004, 04:27 AM
KhaN's Avatar
KhaN
Dragon
 
Join Date: Mar 2004
Location: France, Bordeaux.
Posts: 677
Default

Quote:
actualy i believer that info is handled by the spell themselves.
Actually, you can precise in what type of zone the spell can be casted (Town, Plane, ...), but you cant precise in what zone it can be casted (gfay, ec, wc, ...).
__________________

Reply With Quote
  #7  
Old 07-18-2004, 01:03 PM
bloodgoth
Sarnak
 
Join Date: Jul 2004
Location: Kearns, UT
Posts: 55
Default

But could you not then designate an area of a zone as one of those types?
Reply With Quote
  #8  
Old 07-19-2004, 12:12 AM
Draupner
Hill Giant
 
Join Date: Jul 2004
Location: In my basement
Posts: 131
Default

OK in OP_Castspell (clientprocess.cpp if you didn't know)

under
Code:
CastSpell_Struct* castspell = (CastSpell_Struct*)app->pBuffer;
This particular example will not let complete heal (spell id 13) to be cast in nexus (zone id 152) and will display in yellow text Can't cast spell here.
Code:
if (zone->GetZoneID() == 152 && castspell->spell_id == 13) 
					{
						Message(15, "Can't cast spell here.");
						InterruptSpell(castspell->spell_id);
						break;
					}
Reply With Quote
  #9  
Old 07-19-2004, 10:09 AM
Tangeleno
Sarnak
 
Join Date: Mar 2004
Posts: 61
Default

Funny thing is if I recall correctly at one point in time certain spells could only be cast in certain zones... Like the druid port to EJ could only be cast in KC.
Reply With Quote
  #10  
Old 07-19-2004, 10:48 AM
Melwin
Fire Beetle
 
Join Date: Jan 2005
Posts: 15
Default

Quote:
Originally Posted by Tangeleno
Funny thing is if I recall correctly at one point in time certain spells could only be cast in certain zones... Like the druid port to EJ could only be cast in KC.
It was indoor-only.

Thus you had people going from Dreadlands to KC to have it cast, since KC was indoors and DL was outdoors.
__________________
Shards of Dalaya Staff Administrator
I have stairs in my house.
Reply With Quote
  #11  
Old 07-19-2004, 11:31 AM
Tangeleno
Sarnak
 
Join Date: Mar 2004
Posts: 61
Default

Oh, didn't know that at the time I was a newbie and had only played a warrior. Thought it only worked in KC since I started a druid after the patch that changed it.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 03:25 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3