- Added missing houses in Six and Seven Island.

- Implemented @NPC.dance and @Player.dance commands.
- Implemented the CameraDistanceDelta tag, which allows entity CD to be adjusted manually.
This commit is contained in:
CaptainSegis 2018-08-28 19:34:58 -05:00
parent 67e06e3f69
commit 7b8e781dce
18 changed files with 131 additions and 21 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,4 +1,4 @@
{"Level"{LEV[{"Name"{str[Sevault Canyon]}}{"MusicLoop"{str[RouteMusic4]}}{"CurrentRegion"{str[sevii islands]}}]}} {"Level"{LEV[{"Name"{str[Sevault Canyon]}}{"MusicLoop"{str[violet]}}{"CurrentRegion"{str[sevii islands]}}]}}
{"Actions"{LEV[{"CanTeleport"{bool[0]}}{"CanDig"{bool[0]}}{"CanFly"{bool[0]}}{"EnviromentType"{int[1]}}{"Weather"{int[1]}}]}} {"Actions"{LEV[{"CanTeleport"{bool[0]}}{"CanDig"{bool[0]}}{"CanFly"{bool[0]}}{"EnviromentType"{int[1]}}{"Weather"{int[1]}}]}}
Floor: Floor:
@ -24,23 +24,20 @@ Ceiling:
Furniture: Furniture:
Table: Table:
{"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[3,-0.4,2]}}{"TexturePath"{str[Lab]}}{"Textures"{recArr[[16,64,16,3][16,67,16,3][16,70,16,3][16,73,16,3]]}}{"TextureIndex"{intArr[3,3,3,3,0,0,2,2,3,3]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[3,-0.4,2]}}{"TexturePath"{str[Lab]}}{"Textures"{recArr[[16,64,16,3][16,67,16,3][16,70,16,3][16,73,16,3]]}}{"TextureIndex"{intArr[3,3,3,3,0,0,2,2,3,3]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"CameraDistanceDelta"{sng[0.2]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[4,-0.4,2]}}{"TexturePath"{str[Lab]}}{"Textures"{recArr[[16,64,16,3][16,67,16,3][16,70,16,3][16,73,16,3]]}}{"TextureIndex"{intArr[3,3,2,2,3,3,0,0,3,3]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[4,-0.4,2]}}{"TexturePath"{str[Lab]}}{"Textures"{recArr[[16,64,16,3][16,67,16,3][16,70,16,3][16,73,16,3]]}}{"TextureIndex"{intArr[3,3,2,2,3,3,0,0,3,3]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"CameraDistanceDelta"{sng[0.2]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[3,-0.4,3]}}{"TexturePath"{str[Lab]}}{"Textures"{recArr[[16,64,16,3][16,67,16,3][16,70,16,3][16,73,16,3]]}}{"TextureIndex"{intArr[0,0,3,3,2,2,3,3,3,3]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[3,-0.4,3]}}{"TexturePath"{str[Lab]}}{"Textures"{recArr[[16,64,16,3][16,67,16,3][16,70,16,3][16,73,16,3]]}}{"TextureIndex"{intArr[0,0,3,3,2,2,3,3,3,3]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"CameraDistanceDelta"{sng[0.2]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[4,-0.4,3]}}{"TexturePath"{str[Lab]}}{"Textures"{recArr[[16,64,16,3][16,67,16,3][16,70,16,3][16,73,16,3]]}}{"TextureIndex"{intArr[2,2,0,0,3,3,3,3,3,3]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[4,-0.4,3]}}{"TexturePath"{str[Lab]}}{"Textures"{recArr[[16,64,16,3][16,67,16,3][16,70,16,3][16,73,16,3]]}}{"TextureIndex"{intArr[2,2,0,0,3,3,3,3,3,3]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"CameraDistanceDelta"{sng[0.2]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[3,-0.2,2]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[64,80,16,3][80,64,16,16]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,1,1]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[3,-0.2,2]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[64,80,16,3][80,64,16,16]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,1,1]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"CameraDistanceDelta"{sng[0.2]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[4,-0.2,2]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[64,80,16,3][96,64,16,16]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,1,1]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[4,-0.2,2]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[64,80,16,3][96,64,16,16]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,1,1]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"CameraDistanceDelta"{sng[0.2]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[3,-0.2,3]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[64,80,16,3][80,80,16,16]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,1,1]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[3,-0.2,3]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[64,80,16,3][80,80,16,16]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,1,1]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"CameraDistanceDelta"{sng[0.2]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[4,-0.2,3]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[64,80,16,3][96,80,16,16]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,1,1]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[1,0.2,1]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[4,-0.2,3]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[64,80,16,3][96,80,16,16]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,1,1]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"CameraDistanceDelta"{sng[0.2]}}{"Rotation"{int[0]}}]}}
chairs: chairs:
{"Entity"{ENT[{"Scale"{sngArr[0.5,1,0.5]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[5,0.21,3]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[0,48,16,16]]}}{"TextureIndex"{intArr[0,0]}}{"Collision"{bool[0]}}{"ModelID"{int[0]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[0.5,1,0.5]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[5,0.21,3]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[0,48,16,16]]}}{"TextureIndex"{intArr[0,0]}}{"Collision"{bool[0]}}{"ModelID"{int[0]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[0.3,0.2,0.3]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[5,-0.4,3]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[16,57,16,7]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,0,0]}}{"Collision"{bool[0]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[0.3,0.2,0.3]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[5,-0.4,3]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[16,57,16,7]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,0,0]}}{"Collision"{bool[0]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[0.5,1,0.5]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[2,0.21,3]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[0,48,16,16]]}}{"TextureIndex"{intArr[0,0]}}{"Collision"{bool[0]}}{"ModelID"{int[0]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[0.3,0.2,0.3]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[2,-0.4,3]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[16,57,16,7]]}}{"TextureIndex"{intArr[0,0,0,0,0,0,0,0,0,0]}}{"Collision"{bool[0]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
Plants: Plants:
{"Entity"{ENT[{"Scale"{sngArr[0.6,0.6,0.6]}}{"EntityID"{str[WallBill]}}{"Position"{sngArr[0,-0.25,6]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[0,32,16,16]]}}{"TextureIndex"{intArr[0,0]}}{"Collision"{bool[1]}}{"ModelID"{int[3]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[0.6,0.6,0.6]}}{"EntityID"{str[WallBill]}}{"Position"{sngArr[0,-0.25,6]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[0,32,16,16]]}}{"TextureIndex"{intArr[0,0]}}{"Collision"{bool[1]}}{"ModelID"{int[3]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
{"Entity"{ENT[{"Scale"{sngArr[0.6,0.6,0.6]}}{"EntityID"{str[WallBill]}}{"Position"{sngArr[0,0.35,6]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[0,16,16,16]]}}{"TextureIndex"{intArr[0,0]}}{"Collision"{bool[1]}}{"ModelID"{int[3]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[0.6,0.6,0.6]}}{"EntityID"{str[WallBill]}}{"Position"{sngArr[0,0.35,6]}}{"TexturePath"{str[House2]}}{"Textures"{recArr[[0,16,16,16]]}}{"TextureIndex"{intArr[0,0]}}{"Collision"{bool[1]}}{"ModelID"{int[3]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
@ -62,5 +59,8 @@ tv:
{"Entity"{ENT[{"Scale"{sngArr[0.8,0.5,0.3]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[2,0.15,0]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[80,48,16,11][96,48,16,11][80,59,16,4]]}}{"TextureIndex"{intArr[0,0,1,1,1,1,2,2,2,2]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}} {"Entity"{ENT[{"Scale"{sngArr[0.8,0.5,0.3]}}{"EntityID"{str[WallBlock]}}{"Position"{sngArr[2,0.15,0]}}{"TexturePath"{str[House]}}{"Textures"{recArr[[80,48,16,11][96,48,16,11][80,59,16,4]]}}{"TextureIndex"{intArr[0,0,1,1,1,1,2,2,2,2]}}{"Collision"{bool[1]}}{"ModelID"{int[1]}}{"Action"{int[0]}}{"AdditionalValue"{str[]}}{"Rotation"{int[0]}}]}}
NPCs: NPCs:
{"NPC"{NPC[{"Position"{sngArr[2,0,2]}}{"TextureID"{str[9]}}{"ID"{int[0]}}{"Name"{str[Father]}}{"Action"{int[0]}}{"AdditionalValue"{str[Urrrrrrrrgggghhhh...~Kwaaaaah!*...It's useless!*I can't make this spoon~bend with my mind.*Maybe I really don't have~any psychic powers.]}}{"Rotation"{int[3]}}{"Movement"{str[Still]}}{"MoveRectangles"{recArr[]}}]}} {"NPC"{NPC[{"Position"{sngArr[1,0,2]}}{"TextureID"{str[9]}}{"ID"{int[0]}}{"Name"{str[Man]}}{"Action"{int[1]}}{"AdditionalValue"{str[quest\sevault\danceguy]}}{"Rotation"{int[2]}}{"Movement"{str[Still]}}{"MoveRectangles"{recArr[]}}]}}
{"NPC"{NPC[{"Position"{sngArr[5,0,2]}}{"TextureID"{str[8]}}{"ID"{int[1]}}{"Name"{str[Father]}}{"Action"{int[0]}}{"AdditionalValue"{str[You know about a girl~Gym Leader in Saffron City?*She uses Psychic-type~Pokémon, right?*I admire her,~I really do.*I've heard she's one cool~customer and beautiful, too.]}}{"Rotation"{int[1]}}{"Movement"{str[Still]}}{"MoveRectangles"{recArr[]}}]}} {"NPC"{NPC[{"Position"{sngArr[4,0,0]}}{"TextureID"{str[[POKEMON|N]113]}}{"ID"{int[1]}}{"Name"{str[Chansey]}}{"Action"{int[1]}}{"AdditionalValue"{str[quest\sevault\chansey]}}{"Rotation"{int[2]}}{"Movement"{str[Still]}}{"MoveRectangles"{recArr[]}}]}}
Lucky Punch:
{"Entity"{ENT[{"EntityID"{str[ItemObject]}}{"Position"{sngArr[4,0.03,2]}}{"TexturePath"{str[Routes]}}{"Textures"{recArr[[192,16,16,16]]}}{"TextureIndex"{intArr[0,0]}}{"Collision"{bool[1]}}{"ModelID"{int[3]}}{"Action"{int[0]}}{"AdditionalValue"{str[0,30]}}{"Rotation"{int[0]}}{"Scale"{sngArr[0.25,0.25,0.25]}}]}}

View File

@ -23,12 +23,15 @@
Public Shader As New Vector3(1.0F) Public Shader As New Vector3(1.0F)
Public Shaders As New List(Of Vector3) Public Shaders As New List(Of Vector3)
Public CameraDistanceDelta As Single = 0.0F
Public SeasonColorTexture As String = "" Public SeasonColorTexture As String = ""
Public FaceDirection As Integer = 0 Public FaceDirection As Integer = 0
Public Moved As Single = 0.0F Public Moved As Single = 0.0F
Public Speed As Single = 0.04F Public Speed As Single = 0.04F
Public CanMove As Boolean = False Public CanMove As Boolean = False
Public isDancing As Boolean = False
Public Opacity As Single = 1.0F Public Opacity As Single = 1.0F
Private _normalOpactity As Single = 1.0F Private _normalOpactity As Single = 1.0F
@ -122,7 +125,7 @@
Me.UpdateEntity() Me.UpdateEntity()
End Sub End Sub
Public Shared Function GetNewEntity(ByVal EntityID As String, ByVal Position As Vector3, ByVal Textures() As Texture2D, ByVal TextureIndex() As Integer, ByVal Collision As Boolean, ByVal Rotation As Vector3, ByVal Scale As Vector3, ByVal Model As BaseModel, ByVal ActionValue As Integer, ByVal AdditionalValue As String, ByVal Visible As Boolean, ByVal Shader As Vector3, ByVal ID As Integer, ByVal MapOrigin As String, ByVal SeasonColorTexture As String, ByVal Offset As Vector3, Optional ByVal Params() As Object = Nothing, Optional ByVal Opacity As Single = 1.0F, Optional ByVal AnimationData As List(Of List(Of Integer)) = Nothing) As Entity Public Shared Function GetNewEntity(ByVal EntityID As String, ByVal Position As Vector3, ByVal Textures() As Texture2D, ByVal TextureIndex() As Integer, ByVal Collision As Boolean, ByVal Rotation As Vector3, ByVal Scale As Vector3, ByVal Model As BaseModel, ByVal ActionValue As Integer, ByVal AdditionalValue As String, ByVal Visible As Boolean, ByVal Shader As Vector3, ByVal ID As Integer, ByVal MapOrigin As String, ByVal SeasonColorTexture As String, ByVal Offset As Vector3, Optional ByVal Params() As Object = Nothing, Optional ByVal Opacity As Single = 1.0F, Optional ByVal AnimationData As List(Of List(Of Integer)) = Nothing, Optional ByVal CameraDistanceDelta As Single = 0.0F) As Entity
Dim newEnt As New Entity() Dim newEnt As New Entity()
Dim propertiesEnt As New Entity() Dim propertiesEnt As New Entity()
@ -144,6 +147,7 @@
propertiesEnt.MapOrigin = MapOrigin propertiesEnt.MapOrigin = MapOrigin
propertiesEnt.SeasonColorTexture = SeasonColorTexture propertiesEnt.SeasonColorTexture = SeasonColorTexture
propertiesEnt.Offset = Offset propertiesEnt.Offset = Offset
propertiesEnt.CameraDistanceDelta = CameraDistanceDelta
Select Case EntityID.ToLower() Select Case EntityID.ToLower()
Case "animatedblock" Case "animatedblock"
@ -285,6 +289,7 @@
newEnt.SeasonColorTexture = PropertiesEnt.SeasonColorTexture newEnt.SeasonColorTexture = PropertiesEnt.SeasonColorTexture
newEnt.Offset = PropertiesEnt.Offset newEnt.Offset = PropertiesEnt.Offset
newEnt.NormalOpacity = PropertiesEnt.Opacity newEnt.NormalOpacity = PropertiesEnt.Opacity
newEnt.CameraDistanceDelta = PropertiesEnt.CameraDistanceDelta
End Sub End Sub
Public Shared Function GetRotationFromInteger(ByVal i As Integer) As Vector3 Public Shared Function GetRotationFromInteger(ByVal i As Integer) As Vector3
@ -360,7 +365,7 @@
End Function End Function
Protected Overridable Function CalculateCameraDistance(CPosition As Vector3) As Single Protected Overridable Function CalculateCameraDistance(CPosition As Vector3) As Single
Return Vector3.Distance(Me.GetCameraDistanceCenterPoint(), CPosition) Return Vector3.Distance(Me.GetCameraDistanceCenterPoint(), CPosition) + CameraDistanceDelta
End Function End Function
Public Overridable Sub UpdateEntity() Public Overridable Sub UpdateEntity()
@ -399,6 +404,7 @@
End Select End Select
movement *= Speed movement *= Speed
Me.Position += movement Me.Position += movement
Me.CreatedWorld = False Me.CreatedWorld = False
@ -407,6 +413,7 @@
Me.Position.X = CInt(Me.Position.X) Me.Position.X = CInt(Me.Position.X)
Me.Position.Z = CInt(Me.Position.Z) Me.Position.Z = CInt(Me.Position.Z)
End If End If
End If End If

View File

@ -621,7 +621,9 @@
Private Sub Move() Private Sub Move()
If Moved > 0.0F Then If Moved > 0.0F Then
Me.Position += GetMove() If Not isDancing Then
Me.Position += GetMove()
End If
If Me.Speed < 0 Then If Me.Speed < 0 Then
Moved += Me.Speed Moved += Me.Speed

View File

@ -95,7 +95,7 @@
End Sub End Sub
Private Sub Move() Private Sub Move()
If Screen.Camera.IsMoving() = True And Me.DoAnimation = True Then If (Screen.Camera.IsMoving() = True And Me.DoAnimation = True) OrElse (Screen.Level.OwnPlayer IsNot Nothing AndAlso Screen.Level.OwnPlayer.isDancing) Then
Me.AnimationDelay -= 0.13F Me.AnimationDelay -= 0.13F
If AnimationDelay <= 0.0F Then If AnimationDelay <= 0.0F Then
AnimationDelay = GetAnimationDelay() AnimationDelay = GetAnimationDelay()

View File

@ -547,12 +547,15 @@ Public Class OverworldCamera
If _moved > 0.0F And Turning = False Then If _moved > 0.0F And Turning = False Then
Dim v As Vector3 = PlannedMovement * Speed Dim v As Vector3 = PlannedMovement * Speed
Position += v If Not Screen.Level.OwnPlayer().isDancing Then
Position += v
End If
_moved -= Speed _moved -= Speed
If _moved <= 0.0F Then If _moved <= 0.0F Then
StopMovement() StopMovement()
Screen.Level.OwnPlayer().isDancing = False
Position.X = Position.X.ToInteger() Position.X = Position.X.ToInteger()
Position.Y = Position.Y.ToInteger() + 0.1F Position.Y = Position.Y.ToInteger() + 0.1F
Position.Z = Position.Z.ToInteger() Position.Z = Position.Z.ToInteger()

View File

@ -25441,6 +25441,15 @@
<Content Include="Content\Data\maps\dungeon\2\mega.dat"> <Content Include="Content\Data\maps\dungeon\2\mega.dat">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<None Include="Content\Data\maps\fortune\0.dat">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<Content Include="Content\Data\Scripts\quest\sevault\chansey.dat">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Content\Data\Scripts\quest\sevault\danceguy.dat">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<None Include="packages.config" /> <None Include="packages.config" />
<None Include="Pokemon\Items\_itemList.txt" /> <None Include="Pokemon\Items\_itemList.txt" />
<None Include="My Project\app.manifest" /> <None Include="My Project\app.manifest" />

View File

@ -125,6 +125,63 @@
targetNPC.Moved += steps targetNPC.Moved += steps
targetNPC.MoveAsync = True targetNPC.MoveAsync = True
IsReady = True
Case "dance"
Dim targetNPC As NPC = Screen.Level.GetNPC(int(argument.GetSplit(0)))
Dim steps As Integer = int(argument.GetSplit(1))
Screen.Level.UpdateEntities()
targetNPC.isDancing = True
If ScriptV2.started = False Then
If steps < 0 Then
If targetNPC.Speed > 0 Then
targetNPC.Speed *= -1
End If
Else
If targetNPC.Speed < 0 Then
targetNPC.Speed *= -1
End If
End If
steps = steps.ToPositive()
targetNPC.Moved += steps
ScriptV2.started = True
Else
If targetNPC.Moved <= 0.0F Then
If targetNPC.Speed < 0 Then
targetNPC.Speed *= -1
End If
IsReady = True
Else
If targetNPC.InCameraFocus() = True Then
Screen.Camera.Update()
End If
End If
End If
Case "danceasync"
Dim targetNPC As NPC = Screen.Level.GetNPC(int(argument.GetSplit(0)))
Dim steps As Integer = int(argument.GetSplit(1))
Screen.Level.UpdateEntities()
targetNPC.isDancing = True
If steps < 0 Then
If targetNPC.Speed > 0 Then
targetNPC.Speed *= -1
End If
Else
If targetNPC.Speed < 0 Then
targetNPC.Speed *= -1
End If
End If
steps = steps.ToPositive()
targetNPC.Moved += steps
targetNPC.MoveAsync = True
IsReady = True IsReady = True
Case "turn" Case "turn"
Dim targetNPC As NPC = Screen.Level.GetNPC(int(argument.GetSplit(0))) Dim targetNPC As NPC = Screen.Level.GetNPC(int(argument.GetSplit(0)))

View File

@ -65,6 +65,20 @@
IsReady = True IsReady = True
End If End If
End If End If
Case "dance"
Screen.Level.OwnPlayer().isDancing = True
If Started = False Then
Screen.Camera.Move(sng(argument))
Started = True
Screen.Level.OverworldPokemon.Visible = False
Else
Screen.Level.UpdateEntities()
Screen.Camera.Update()
If Screen.Camera.IsMoving() = False Then
IsReady = True
Screen.Level.OverworldPokemon.Visible = False
End If
End If
Case "turnasync" Case "turnasync"
Screen.Camera.Turn(int(argument)) Screen.Camera.Turn(int(argument))
IsReady = True IsReady = True

View File

@ -859,6 +859,11 @@
Opacity = CSng(GetTag(Tags, "Opacity")) Opacity = CSng(GetTag(Tags, "Opacity"))
End If End If
Dim CameraDistanceDelta As Single = 0.0F
If TagExists(Tags, "CameraDistanceDelta") = True Then
CameraDistanceDelta = CSng(GetTag(Tags, "CameraDistanceDelta"))
End If
For X = 0 To Size.Width - 1 Step Steps.X For X = 0 To Size.Width - 1 Step Steps.X
For Z = 0 To Size.Height - 1 Step Steps.Z For Z = 0 To Size.Height - 1 Step Steps.Z
For Y = 0 To SizeY - 1 Step Steps.Y For Y = 0 To SizeY - 1 Step Steps.Y
@ -906,7 +911,8 @@
Offset, Offset,
{}, {},
Opacity, Opacity,
AnimationData) AnimationData,
CameraDistanceDelta)
newEnt.IsOffsetMapContent = loadOffsetMap newEnt.IsOffsetMapContent = loadOffsetMap
If Not newEnt Is Nothing Then If Not newEnt Is Nothing Then

View File

@ -1378,3 +1378,15 @@
/processorParam:Quality=Best /processorParam:Quality=Best
/build:Songs/wind.ogg /build:Songs/wind.ogg
#begin Songs/trainerschool.ogg
/importer:OggImporter
/processor:SongProcessor
/processorParam:Quality=Best
/build:Songs/trainerschool.ogg
#begin Songs/intro/trainerschool.ogg
/importer:OggImporter
/processor:SongProcessor
/processorParam:Quality=Best
/build:Songs/intro/trainerschool.ogg

Binary file not shown.

Binary file not shown.

Binary file not shown.