\hypertarget{p__spec_8cpp}{
\section{common/p\_\-spec.cpp File Reference}
\label{df/d13/p__spec_8cpp}\index{common/p\_\-spec.cpp@{common/p\_\-spec.cpp}}
}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structanim__t}{anim\_\-t}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{p__spec_8cpp_a357f4bd05a7ad769bff6b4d71b9ecbff}{EXTERN\_\-CVAR} (sv\_\-allowexit) extern bool \hyperlink{sv__main_8cpp_a9fa7006a835864df3291c41ee4b5722c}{HasBehavior}
\item 
\hyperlink{p__spec_8cpp_aa6e9a542da37192db8e416a4438b39ac}{IMPLEMENT\_\-SERIAL} (\hyperlink{classDScroller}{DScroller}, \hyperlink{classDThinker}{DThinker}) IMPLEMENT\_\-SERIAL(\hyperlink{classDPusher}{DPusher}
\item 
void \hyperlink{p__spec_8cpp_a6c078b891b35ebd77f2927835b6d611f}{P\_\-InitPicAnims} (void)
\item 
\hyperlink{structsector__s}{sector\_\-t} $\ast$ \hyperlink{p__spec_8cpp_ab982b64040949be0d039b6dc95017573}{P\_\-NextSpecialSector} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec, int type, \hyperlink{structsector__s}{sector\_\-t} $\ast$nogood)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_a7d8abbc55a716dfe09df7d223888fda3}{P\_\-FindLowestFloorSurrounding} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_a4dfc0bd0469a08acde4c8308dadb643f}{P\_\-FindHighestFloorSurrounding} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_a779a11d02626d15fa506a1fb7c6bccf4}{P\_\-FindNextHighestFloor} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec, int currentheight)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_aa25c6722c7924042a6092c34c51f2636}{P\_\-FindNextLowestFloor} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec, int currentheight)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_a3f5300c3ebeacecd436db5de39e95031}{P\_\-FindNextLowestCeiling} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec, int currentheight)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_af9141ba19731ed2c88d65f1adb52b4cd}{P\_\-FindNextHighestCeiling} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec, int currentheight)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_a13e539f0f218822aa7e8bee3e7aea364}{P\_\-FindLowestCeilingSurrounding} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_ad9111fbd99dcb9c3aa68851dcb464c21}{P\_\-FindHighestCeilingSurrounding} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sec)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_aa770ba0b9863dc034537803ef9ef8571}{P\_\-FindShortestTextureAround} (int secnum)
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_aad26bfe712f62d7ccfc09580d0ce798e}{P\_\-FindShortestUpperAround} (int secnum)
\item 
\hyperlink{structsector__s}{sector\_\-t} $\ast$ \hyperlink{p__spec_8cpp_a5e11f4d98cc5884f1dd3dd7397c03c2e}{P\_\-FindModelFloorSector} (\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} floordestheight, int secnum)
\item 
\hyperlink{structsector__s}{sector\_\-t} $\ast$ \hyperlink{p__spec_8cpp_a02ccb3c78ef17870bb8ab5385062e041}{P\_\-FindModelCeilingSector} (\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} ceildestheight, int secnum)
\item 
int \hyperlink{p__spec_8cpp_ad255c75b1536427a3a8881a349975a80}{P\_\-FindSectorFromTag} (int tag, int start)
\item 
int \hyperlink{p__spec_8cpp_a09415c0ce92ca61f0b1650ca2f118557}{P\_\-FindLineFromID} (int id, int start)
\item 
int \hyperlink{p__spec_8cpp_a0c34a596272bb98753af932ce2b29e3e}{P\_\-FindMinSurroundingLight} (\hyperlink{structsector__s}{sector\_\-t} $\ast$sector, int max)
\item 
\hyperlink{doomtype_8h_a050c65e107f0c828f856a231f4b4e788}{BOOL} \hyperlink{p__spec_8cpp_ac6999faf04c369ddd9ff0cbbc01836db}{P\_\-CheckKeys} (\hyperlink{classplayer__s}{player\_\-t} $\ast$\hyperlink{server_2src_2c__console_8cpp_a7bc58a99d0c721378c1951474db4c3b8}{p}, \hyperlink{doomdef_8h_a8968c90be988b4c72e99a83d6165414b}{card\_\-t} lock, \hyperlink{doomtype_8h_a050c65e107f0c828f856a231f4b4e788}{BOOL} remote)
\item 
void \hyperlink{p__spec_8cpp_aa406d91c8586563529dbfc86c303a8cf}{OnChangedSwitchTexture} (\hyperlink{structline__s}{line\_\-t} $\ast$line, int useAgain)
\item 
void \hyperlink{p__spec_8cpp_a9c190f5d2f851f987c8b03bb1be5d6fe}{OnActivatedLine} (\hyperlink{structline__s}{line\_\-t} $\ast$line, \hyperlink{classAActor}{AActor} $\ast$mo, int side, int activationType)
\item 
void \hyperlink{p__spec_8cpp_a01e024312bce1d95141b3a9fb6086000}{P\_\-CrossSpecialLine} (int linenum, int side, \hyperlink{classAActor}{AActor} $\ast$thing, bool FromServer)
\item 
void \hyperlink{p__spec_8cpp_a458c079fcdcd23dd86aaa1786fb0d2a6}{P\_\-ShootSpecialLine} (\hyperlink{classAActor}{AActor} $\ast$thing, \hyperlink{structline__s}{line\_\-t} $\ast$line, bool FromServer)
\item 
bool \hyperlink{p__spec_8cpp_a3948579be8b1497e7cc0bf7e22ea80ca}{P\_\-UseSpecialLine} (\hyperlink{classAActor}{AActor} $\ast$thing, \hyperlink{structline__s}{line\_\-t} $\ast$line, int side, bool FromServer)
\item 
bool \hyperlink{p__spec_8cpp_ae95a8d7d91db2b245b4eae839cc8b4c3}{P\_\-PushSpecialLine} (\hyperlink{classAActor}{AActor} $\ast$thing, \hyperlink{structline__s}{line\_\-t} $\ast$line, int side, bool FromServer)
\item 
void \hyperlink{p__spec_8cpp_a3c2d13ba655505f579b296a91d1ce5b7}{P\_\-PlayerInSpecialSector} (\hyperlink{classplayer__s}{player\_\-t} $\ast$player)
\item 
void \hyperlink{p__spec_8cpp_aa90885453063cc97b971453b2bc5766f}{P\_\-UpdateSpecials} (void)
\item 
\hyperlink{p__spec_8cpp_a1635fa101bb5afe24f584267c49f5b87}{CVAR\_\-FUNC\_\-IMPL} (sv\_\-forcewater)
\item 
void \hyperlink{p__spec_8cpp_a2c1dd85e53d33cbc820a4617c5af9b4c}{P\_\-SpawnSpecials} (void)
\item 
\hyperlink{doomtype_8h_a050c65e107f0c828f856a231f4b4e788}{BOOL} \hyperlink{p__spec_8cpp_a15559f94fe156456c6475eef2a2fd137}{PIT\_\-PushThing} (\hyperlink{classAActor}{AActor} $\ast$thing)
\item 
\hyperlink{classAActor}{AActor} $\ast$ \hyperlink{p__spec_8cpp_a2893c77e4dac5b0849b4c8ef9179ad53}{P\_\-GetPushThing} (int \hyperlink{client_2src_2v__palette_8cpp_a06ccf22bb96191a8ce5f85600b246060}{s})
\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classDPusher}{DPusher} $\ast$ \hyperlink{p__spec_8cpp_acb43c9dd922b825cdc8469424d0f741d}{tmpusher}
\item 
\hyperlink{m__fixed_8h_a7fdea216e6bec468d1569e8ab1bd469b}{fixed\_\-t} \hyperlink{p__spec_8cpp_aecb7e58e9749ae598d88f9faf9748b42}{tmbbox} \mbox{[}4\mbox{]}
\end{DoxyCompactItemize}


\subsection{Function Documentation}
\hypertarget{p__spec_8cpp_a1635fa101bb5afe24f584267c49f5b87}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!CVAR\_\-FUNC\_\-IMPL@{CVAR\_\-FUNC\_\-IMPL}}
\index{CVAR\_\-FUNC\_\-IMPL@{CVAR\_\-FUNC\_\-IMPL}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{CVAR\_\-FUNC\_\-IMPL}]{\setlength{\rightskip}{0pt plus 5cm}CVAR\_\-FUNC\_\-IMPL (
\begin{DoxyParamCaption}
\item[{sv\_\-forcewater}]{}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a1635fa101bb5afe24f584267c49f5b87}
\hypertarget{p__spec_8cpp_a357f4bd05a7ad769bff6b4d71b9ecbff}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!EXTERN\_\-CVAR@{EXTERN\_\-CVAR}}
\index{EXTERN\_\-CVAR@{EXTERN\_\-CVAR}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{EXTERN\_\-CVAR}]{\setlength{\rightskip}{0pt plus 5cm}EXTERN\_\-CVAR (
\begin{DoxyParamCaption}
\item[{sv\_\-allowexit}]{}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a357f4bd05a7ad769bff6b4d71b9ecbff}
\hypertarget{p__spec_8cpp_aa6e9a542da37192db8e416a4438b39ac}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!IMPLEMENT\_\-SERIAL@{IMPLEMENT\_\-SERIAL}}
\index{IMPLEMENT\_\-SERIAL@{IMPLEMENT\_\-SERIAL}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{IMPLEMENT\_\-SERIAL}]{\setlength{\rightskip}{0pt plus 5cm}IMPLEMENT\_\-SERIAL (
\begin{DoxyParamCaption}
\item[{{\bf DScroller}}]{, }
\item[{{\bf DThinker}}]{}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_aa6e9a542da37192db8e416a4438b39ac}
\hypertarget{p__spec_8cpp_a9c190f5d2f851f987c8b03bb1be5d6fe}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!OnActivatedLine@{OnActivatedLine}}
\index{OnActivatedLine@{OnActivatedLine}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{OnActivatedLine}]{\setlength{\rightskip}{0pt plus 5cm}void OnActivatedLine (
\begin{DoxyParamCaption}
\item[{{\bf line\_\-t} $\ast$}]{line, }
\item[{{\bf AActor} $\ast$}]{mo, }
\item[{int}]{side, }
\item[{int}]{activationType}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a9c190f5d2f851f987c8b03bb1be5d6fe}
\hypertarget{p__spec_8cpp_aa406d91c8586563529dbfc86c303a8cf}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!OnChangedSwitchTexture@{OnChangedSwitchTexture}}
\index{OnChangedSwitchTexture@{OnChangedSwitchTexture}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{OnChangedSwitchTexture}]{\setlength{\rightskip}{0pt plus 5cm}void OnChangedSwitchTexture (
\begin{DoxyParamCaption}
\item[{{\bf line\_\-t} $\ast$}]{line, }
\item[{int}]{useAgain}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_aa406d91c8586563529dbfc86c303a8cf}
\hypertarget{p__spec_8cpp_ac6999faf04c369ddd9ff0cbbc01836db}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-CheckKeys@{P\_\-CheckKeys}}
\index{P\_\-CheckKeys@{P\_\-CheckKeys}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-CheckKeys}]{\setlength{\rightskip}{0pt plus 5cm}{\bf BOOL} P\_\-CheckKeys (
\begin{DoxyParamCaption}
\item[{{\bf player\_\-t} $\ast$}]{p, }
\item[{{\bf card\_\-t}}]{lock, }
\item[{{\bf BOOL}}]{remote}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_ac6999faf04c369ddd9ff0cbbc01836db}
\hypertarget{p__spec_8cpp_a01e024312bce1d95141b3a9fb6086000}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-CrossSpecialLine@{P\_\-CrossSpecialLine}}
\index{P\_\-CrossSpecialLine@{P\_\-CrossSpecialLine}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-CrossSpecialLine}]{\setlength{\rightskip}{0pt plus 5cm}void P\_\-CrossSpecialLine (
\begin{DoxyParamCaption}
\item[{int}]{linenum, }
\item[{int}]{side, }
\item[{{\bf AActor} $\ast$}]{thing, }
\item[{bool}]{FromServer}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a01e024312bce1d95141b3a9fb6086000}
\hypertarget{p__spec_8cpp_ad9111fbd99dcb9c3aa68851dcb464c21}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindHighestCeilingSurrounding@{P\_\-FindHighestCeilingSurrounding}}
\index{P\_\-FindHighestCeilingSurrounding@{P\_\-FindHighestCeilingSurrounding}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindHighestCeilingSurrounding}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindHighestCeilingSurrounding (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_ad9111fbd99dcb9c3aa68851dcb464c21}
\hypertarget{p__spec_8cpp_a4dfc0bd0469a08acde4c8308dadb643f}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindHighestFloorSurrounding@{P\_\-FindHighestFloorSurrounding}}
\index{P\_\-FindHighestFloorSurrounding@{P\_\-FindHighestFloorSurrounding}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindHighestFloorSurrounding}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindHighestFloorSurrounding (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a4dfc0bd0469a08acde4c8308dadb643f}
\hypertarget{p__spec_8cpp_a09415c0ce92ca61f0b1650ca2f118557}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindLineFromID@{P\_\-FindLineFromID}}
\index{P\_\-FindLineFromID@{P\_\-FindLineFromID}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindLineFromID}]{\setlength{\rightskip}{0pt plus 5cm}int P\_\-FindLineFromID (
\begin{DoxyParamCaption}
\item[{int}]{id, }
\item[{int}]{start}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a09415c0ce92ca61f0b1650ca2f118557}
\hypertarget{p__spec_8cpp_a13e539f0f218822aa7e8bee3e7aea364}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindLowestCeilingSurrounding@{P\_\-FindLowestCeilingSurrounding}}
\index{P\_\-FindLowestCeilingSurrounding@{P\_\-FindLowestCeilingSurrounding}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindLowestCeilingSurrounding}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindLowestCeilingSurrounding (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a13e539f0f218822aa7e8bee3e7aea364}
\hypertarget{p__spec_8cpp_a7d8abbc55a716dfe09df7d223888fda3}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindLowestFloorSurrounding@{P\_\-FindLowestFloorSurrounding}}
\index{P\_\-FindLowestFloorSurrounding@{P\_\-FindLowestFloorSurrounding}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindLowestFloorSurrounding}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindLowestFloorSurrounding (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a7d8abbc55a716dfe09df7d223888fda3}
\hypertarget{p__spec_8cpp_a0c34a596272bb98753af932ce2b29e3e}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindMinSurroundingLight@{P\_\-FindMinSurroundingLight}}
\index{P\_\-FindMinSurroundingLight@{P\_\-FindMinSurroundingLight}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindMinSurroundingLight}]{\setlength{\rightskip}{0pt plus 5cm}int P\_\-FindMinSurroundingLight (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sector, }
\item[{int}]{max}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a0c34a596272bb98753af932ce2b29e3e}
\hypertarget{p__spec_8cpp_a02ccb3c78ef17870bb8ab5385062e041}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindModelCeilingSector@{P\_\-FindModelCeilingSector}}
\index{P\_\-FindModelCeilingSector@{P\_\-FindModelCeilingSector}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindModelCeilingSector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf sector\_\-t}$\ast$ P\_\-FindModelCeilingSector (
\begin{DoxyParamCaption}
\item[{{\bf fixed\_\-t}}]{ceildestheight, }
\item[{int}]{secnum}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a02ccb3c78ef17870bb8ab5385062e041}
\hypertarget{p__spec_8cpp_a5e11f4d98cc5884f1dd3dd7397c03c2e}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindModelFloorSector@{P\_\-FindModelFloorSector}}
\index{P\_\-FindModelFloorSector@{P\_\-FindModelFloorSector}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindModelFloorSector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf sector\_\-t}$\ast$ P\_\-FindModelFloorSector (
\begin{DoxyParamCaption}
\item[{{\bf fixed\_\-t}}]{floordestheight, }
\item[{int}]{secnum}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a5e11f4d98cc5884f1dd3dd7397c03c2e}
\hypertarget{p__spec_8cpp_af9141ba19731ed2c88d65f1adb52b4cd}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindNextHighestCeiling@{P\_\-FindNextHighestCeiling}}
\index{P\_\-FindNextHighestCeiling@{P\_\-FindNextHighestCeiling}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindNextHighestCeiling}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindNextHighestCeiling (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec, }
\item[{int}]{currentheight}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_af9141ba19731ed2c88d65f1adb52b4cd}
\hypertarget{p__spec_8cpp_a779a11d02626d15fa506a1fb7c6bccf4}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindNextHighestFloor@{P\_\-FindNextHighestFloor}}
\index{P\_\-FindNextHighestFloor@{P\_\-FindNextHighestFloor}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindNextHighestFloor}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindNextHighestFloor (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec, }
\item[{int}]{currentheight}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a779a11d02626d15fa506a1fb7c6bccf4}
\hypertarget{p__spec_8cpp_a3f5300c3ebeacecd436db5de39e95031}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindNextLowestCeiling@{P\_\-FindNextLowestCeiling}}
\index{P\_\-FindNextLowestCeiling@{P\_\-FindNextLowestCeiling}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindNextLowestCeiling}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindNextLowestCeiling (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec, }
\item[{int}]{currentheight}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a3f5300c3ebeacecd436db5de39e95031}
\hypertarget{p__spec_8cpp_aa25c6722c7924042a6092c34c51f2636}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindNextLowestFloor@{P\_\-FindNextLowestFloor}}
\index{P\_\-FindNextLowestFloor@{P\_\-FindNextLowestFloor}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindNextLowestFloor}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindNextLowestFloor (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec, }
\item[{int}]{currentheight}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_aa25c6722c7924042a6092c34c51f2636}
\hypertarget{p__spec_8cpp_ad255c75b1536427a3a8881a349975a80}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindSectorFromTag@{P\_\-FindSectorFromTag}}
\index{P\_\-FindSectorFromTag@{P\_\-FindSectorFromTag}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindSectorFromTag}]{\setlength{\rightskip}{0pt plus 5cm}int P\_\-FindSectorFromTag (
\begin{DoxyParamCaption}
\item[{int}]{tag, }
\item[{int}]{start}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_ad255c75b1536427a3a8881a349975a80}
\hypertarget{p__spec_8cpp_aa770ba0b9863dc034537803ef9ef8571}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindShortestTextureAround@{P\_\-FindShortestTextureAround}}
\index{P\_\-FindShortestTextureAround@{P\_\-FindShortestTextureAround}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindShortestTextureAround}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindShortestTextureAround (
\begin{DoxyParamCaption}
\item[{int}]{secnum}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_aa770ba0b9863dc034537803ef9ef8571}
\hypertarget{p__spec_8cpp_aad26bfe712f62d7ccfc09580d0ce798e}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-FindShortestUpperAround@{P\_\-FindShortestUpperAround}}
\index{P\_\-FindShortestUpperAround@{P\_\-FindShortestUpperAround}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-FindShortestUpperAround}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} P\_\-FindShortestUpperAround (
\begin{DoxyParamCaption}
\item[{int}]{secnum}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_aad26bfe712f62d7ccfc09580d0ce798e}
\hypertarget{p__spec_8cpp_a2893c77e4dac5b0849b4c8ef9179ad53}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-GetPushThing@{P\_\-GetPushThing}}
\index{P\_\-GetPushThing@{P\_\-GetPushThing}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-GetPushThing}]{\setlength{\rightskip}{0pt plus 5cm}{\bf AActor}$\ast$ P\_\-GetPushThing (
\begin{DoxyParamCaption}
\item[{int}]{s}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a2893c77e4dac5b0849b4c8ef9179ad53}
\hypertarget{p__spec_8cpp_a6c078b891b35ebd77f2927835b6d611f}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-InitPicAnims@{P\_\-InitPicAnims}}
\index{P\_\-InitPicAnims@{P\_\-InitPicAnims}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-InitPicAnims}]{\setlength{\rightskip}{0pt plus 5cm}void P\_\-InitPicAnims (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a6c078b891b35ebd77f2927835b6d611f}
\hypertarget{p__spec_8cpp_ab982b64040949be0d039b6dc95017573}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-NextSpecialSector@{P\_\-NextSpecialSector}}
\index{P\_\-NextSpecialSector@{P\_\-NextSpecialSector}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-NextSpecialSector}]{\setlength{\rightskip}{0pt plus 5cm}{\bf sector\_\-t}$\ast$ P\_\-NextSpecialSector (
\begin{DoxyParamCaption}
\item[{{\bf sector\_\-t} $\ast$}]{sec, }
\item[{int}]{type, }
\item[{{\bf sector\_\-t} $\ast$}]{nogood}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_ab982b64040949be0d039b6dc95017573}
\hypertarget{p__spec_8cpp_a3c2d13ba655505f579b296a91d1ce5b7}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-PlayerInSpecialSector@{P\_\-PlayerInSpecialSector}}
\index{P\_\-PlayerInSpecialSector@{P\_\-PlayerInSpecialSector}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-PlayerInSpecialSector}]{\setlength{\rightskip}{0pt plus 5cm}void P\_\-PlayerInSpecialSector (
\begin{DoxyParamCaption}
\item[{{\bf player\_\-t} $\ast$}]{player}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a3c2d13ba655505f579b296a91d1ce5b7}
\hypertarget{p__spec_8cpp_ae95a8d7d91db2b245b4eae839cc8b4c3}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-PushSpecialLine@{P\_\-PushSpecialLine}}
\index{P\_\-PushSpecialLine@{P\_\-PushSpecialLine}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-PushSpecialLine}]{\setlength{\rightskip}{0pt plus 5cm}bool P\_\-PushSpecialLine (
\begin{DoxyParamCaption}
\item[{{\bf AActor} $\ast$}]{thing, }
\item[{{\bf line\_\-t} $\ast$}]{line, }
\item[{int}]{side, }
\item[{bool}]{FromServer}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_ae95a8d7d91db2b245b4eae839cc8b4c3}
\hypertarget{p__spec_8cpp_a458c079fcdcd23dd86aaa1786fb0d2a6}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-ShootSpecialLine@{P\_\-ShootSpecialLine}}
\index{P\_\-ShootSpecialLine@{P\_\-ShootSpecialLine}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-ShootSpecialLine}]{\setlength{\rightskip}{0pt plus 5cm}void P\_\-ShootSpecialLine (
\begin{DoxyParamCaption}
\item[{{\bf AActor} $\ast$}]{thing, }
\item[{{\bf line\_\-t} $\ast$}]{line, }
\item[{bool}]{FromServer}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a458c079fcdcd23dd86aaa1786fb0d2a6}
\hypertarget{p__spec_8cpp_a2c1dd85e53d33cbc820a4617c5af9b4c}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-SpawnSpecials@{P\_\-SpawnSpecials}}
\index{P\_\-SpawnSpecials@{P\_\-SpawnSpecials}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-SpawnSpecials}]{\setlength{\rightskip}{0pt plus 5cm}void P\_\-SpawnSpecials (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a2c1dd85e53d33cbc820a4617c5af9b4c}
\hypertarget{p__spec_8cpp_aa90885453063cc97b971453b2bc5766f}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-UpdateSpecials@{P\_\-UpdateSpecials}}
\index{P\_\-UpdateSpecials@{P\_\-UpdateSpecials}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-UpdateSpecials}]{\setlength{\rightskip}{0pt plus 5cm}void P\_\-UpdateSpecials (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_aa90885453063cc97b971453b2bc5766f}
\hypertarget{p__spec_8cpp_a3948579be8b1497e7cc0bf7e22ea80ca}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!P\_\-UseSpecialLine@{P\_\-UseSpecialLine}}
\index{P\_\-UseSpecialLine@{P\_\-UseSpecialLine}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{P\_\-UseSpecialLine}]{\setlength{\rightskip}{0pt plus 5cm}bool P\_\-UseSpecialLine (
\begin{DoxyParamCaption}
\item[{{\bf AActor} $\ast$}]{thing, }
\item[{{\bf line\_\-t} $\ast$}]{line, }
\item[{int}]{side, }
\item[{bool}]{FromServer}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a3948579be8b1497e7cc0bf7e22ea80ca}
\hypertarget{p__spec_8cpp_a15559f94fe156456c6475eef2a2fd137}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!PIT\_\-PushThing@{PIT\_\-PushThing}}
\index{PIT\_\-PushThing@{PIT\_\-PushThing}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{PIT\_\-PushThing}]{\setlength{\rightskip}{0pt plus 5cm}{\bf BOOL} PIT\_\-PushThing (
\begin{DoxyParamCaption}
\item[{{\bf AActor} $\ast$}]{thing}
\end{DoxyParamCaption}
)}}
\label{df/d13/p__spec_8cpp_a15559f94fe156456c6475eef2a2fd137}


\subsection{Variable Documentation}
\hypertarget{p__spec_8cpp_aecb7e58e9749ae598d88f9faf9748b42}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!tmbbox@{tmbbox}}
\index{tmbbox@{tmbbox}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{tmbbox}]{\setlength{\rightskip}{0pt plus 5cm}{\bf fixed\_\-t} {\bf tmbbox}\mbox{[}4\mbox{]}}}
\label{df/d13/p__spec_8cpp_aecb7e58e9749ae598d88f9faf9748b42}
\hypertarget{p__spec_8cpp_acb43c9dd922b825cdc8469424d0f741d}{
\index{p\_\-spec.cpp@{p\_\-spec.cpp}!tmpusher@{tmpusher}}
\index{tmpusher@{tmpusher}!p_spec.cpp@{p\_\-spec.cpp}}
\subsubsection[{tmpusher}]{\setlength{\rightskip}{0pt plus 5cm}{\bf DPusher}$\ast$ {\bf tmpusher}}}
\label{df/d13/p__spec_8cpp_acb43c9dd922b825cdc8469424d0f741d}
