// File: wrighteagle2d[P]wrighteaglebase/Debug/../src/PlayerState.cpp
// Function: PlayerState::PlayerState()
PlayerState::PlayerState()
    : MobileState(ServerParam::instance().playerDecay(),
                  PlayerParam::instance().HeteroPlayer(0).effectiveSpeedMax()) {
  mBallCatchable = false;
  mCatchBan = 0;
  mCollideWithBall = false;
  mCollideWithPlayer = false;
  mCollideWithPost = false;
  mIsAlive = false;
  mIsGoalie = false;
  mIsSensed = false;
  mIsKicked = false;
  mIsPointing = false;
  mKickRate = 0.0;
  mIsKickable = false;
  mMaxTurnAngle = 0.0;
  mPlayerType = 0;

  mStamina = ServerParam::instance().staminaMax();
  mEffort = ServerParam::instance().effortInit();
  mCapacity = ServerParam::instance().staminaCapacity();
  mRecovery = ServerParam::instance().recoverInit();

  mTackleBan = 0;
  mUnderDangerousTackleCondition = false;

  mFoulChargedCycle = 0;

  mUnum = 0;

  mViewWidth = VW_Normal;
  mIsTired = false;
  mMinStamina = PlayerParam::instance().MinStamina();

  mCardType = CR_None;
  mIsBodyDirMayChanged = true;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x80, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
callq 0x855e0
movq %rax, %rdi
callq 0x7b360
movsd (%rax), %xmm0
movsd %xmm0, -0x30(%rbp)
callq 0x798a0
movq %rax, %rdi
movl $0x0, -0xc(%rbp)
leaq -0xc(%rbp), %rsi
callq 0x129d0
movq %rax, %rdi
callq 0x29430
movsd -0x30(%rbp), %xmm0
movq -0x28(%rbp), %rdi
movsd (%rax), %xmm1
callq 0x6f2f0
movq -0x28(%rbp), %rdi
leaq 0x80cc6(%rip), %rax     # 0xfcdc0
movq %rax, (%rdi)
addq $0x98, %rdi
callq 0x7d0d0
jmp 0x7c10b
movq -0x28(%rbp), %rdi
addq $0xb0, %rdi
callq 0x7d0d0
jmp 0x7c11d
movq -0x28(%rbp), %rdi
addq $0xd0, %rdi
callq 0x7d100
jmp 0x7c12f
movq -0x28(%rbp), %rdi
addq $0xf8, %rdi
callq 0x7d140
jmp 0x7c141
movq -0x28(%rbp), %rdi
addq $0x140, %rdi            # imm = 0x140
callq 0x3f980
jmp 0x7c153
movq -0x28(%rbp), %rax
movb $0x0, 0x138(%rax)
movl $0x0, 0xcc(%rax)
movb $0x0, 0x120(%rax)
movb $0x0, 0x121(%rax)
movb $0x0, 0x122(%rax)
movb $0x0, 0x112(%rax)
movb $0x0, 0x175(%rax)
movb $0x0, 0x176(%rax)
movb $0x0, 0x111(%rax)
movb $0x0, 0x110(%rax)
movq $0x0, 0x130(%rax)
movb $0x0, 0x128(%rax)
movq $0x0, 0x158(%rax)
movl $0x0, 0x114(%rax)
callq 0x855e0
movq %rax, -0x38(%rbp)
jmp 0x7c1d2
movq -0x38(%rbp), %rdi
callq 0x32930
movq %rax, -0x40(%rbp)
jmp 0x7c1e1
movq -0x28(%rbp), %rax
movq -0x40(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x78(%rax)
callq 0x855e0
movq %rax, -0x48(%rbp)
jmp 0x7c1fd
movq -0x48(%rbp), %rdi
callq 0x6ef30
movq %rax, -0x50(%rbp)
jmp 0x7c20c
movq -0x28(%rbp), %rax
movq -0x50(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x80(%rax)
callq 0x855e0
movq %rax, -0x58(%rbp)
jmp 0x7c22b
movq -0x58(%rbp), %rdi
callq 0x6ef50
movq %rax, -0x60(%rbp)
jmp 0x7c23a
movq -0x28(%rbp), %rax
movq -0x60(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x88(%rax)
callq 0x855e0
movq %rax, -0x68(%rbp)
jmp 0x7c259
movq -0x68(%rbp), %rdi
callq 0x7d180
movq %rax, -0x70(%rbp)
jmp 0x7c268
movq -0x28(%rbp), %rax
movq -0x70(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x90(%rax)
movl $0x0, 0xc8(%rax)
movb $0x0, 0x150(%rax)
movl $0x0, 0x124(%rax)
movl $0x0, 0x11c(%rax)
movl $0x2, 0x118(%rax)
movb $0x0, 0x160(%rax)
callq 0x798a0
movq %rax, -0x78(%rbp)
jmp 0x7c2bd
movq -0x78(%rbp), %rdi
callq 0x12c00
movq %rax, -0x80(%rbp)
jmp 0x7c2cc
movq -0x28(%rbp), %rax
movq -0x80(%rbp), %rcx
movsd (%rcx), %xmm0
movsd %xmm0, 0x168(%rax)
movl $0x0, 0x170(%rax)
movb $0x1, 0x174(%rax)
addq $0x80, %rsp
popq %rbp
retq
movq -0x28(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
callq 0x12550
movq -0x18(%rbp), %rdi
callq 0xaa60
nopl (%rax,%rax)