// File: /workspace/github_cpp_makefile_star2_O3/wrighteagle2d[P]wrighteaglebase/Debug/../src/PlayerParam.cpp
// Function: PlayerParam::init(int, char**)
void PlayerParam::init(int argc, char **argv) {
  ParseFromCmdLine(
      argc, argv); //首先分析命令行，因为有可能命令行里面改了配置文件的路径
  ParseFromConfigFile(M_player_conf_file.c_str()); //分析配置文件
  ParseFromCmdLine(
      argc, argv); //再次分析命令行，因为命令行有权更改配置文件里面的默认设置
  MaintainConsistency();

  std::ifstream file("data/eps0.1");

  memset(mSightChange, 0, sizeof(mSightChange));
  if (!file) {
    PRINT_ERROR("date/eps0.1 not exist");
    return;
  }

  int i = 0;
  while (!file.eof()) {
    if (i >= SIGHTSIZE) {
      //    PRINT_ERROR("mSightChange not big enough!!!!!!!");
      break;
    }
    file >> mSightChange[i][0] >> mSightChange[i][1] >> mSightChange[i][2];
    i++;
  }
  file.close();

  std::ifstream file1("data/eps0.01");
  memset(mMarkChange, 0, sizeof(mMarkChange));
  if (!file1) {
    PRINT_ERROR("file data/eps0.01 not exist");
    return;
  }
  i = 0;
  while (!file1.eof()) {

    if (i >= MARKSIZE) {
      //	 PRINT_ERROR("mMarkChange not big enough!!!!!!!!");
      break;
    }
    file1 >> mMarkChange[i][0] >> mMarkChange[i][1] >> mMarkChange[i][2];
    i++;
  }
  file1.close();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x410, %rsp            # imm = 0x410
movq %rdx, %r14
movl %esi, %r15d
movq %rdi, %rbx
callq 0x3d196
movq 0x30d8(%rbx), %rsi
movq %rbx, %rdi
callq 0x3d2f4
movq %rbx, %rdi
movl %r15d, %esi
movq %r14, %rdx
callq 0x3d196
movl 0x3140(%rbx), %eax
movl %eax, 0x3158(%rbx)
callq 0x49360
movsd 0x3438(%rax), %xmm0
addsd 0x5c58(%rbx), %xmm0
movsd %xmm0, 0x5c60(%rbx)
leaq 0x27058(%rip), %rsi     # 0x6bc8d
leaq -0x430(%rbp), %r15
movq %r15, %rdi
movl $0x8, %edx
callq 0x9920
leaq 0x3208(%rbx), %r14
movl $0x5d0, %edx            # imm = 0x5D0
movq %r14, %rdi
xorl %esi, %esi
callq 0x92b0
movq (%r15), %rax
movq -0x18(%rax), %rax
movl -0x410(%rbp,%rax), %eax
testb $0x5, %al
je 0x44d0d
movq 0x3f374(%rip), %rdi     # 0x83ff0
leaq 0x27016(%rip), %rsi     # 0x6bc99
movl $0x16, %edx
callq 0x9560
movq 0x3f35c(%rip), %rdi     # 0x83ff0
leaq 0x284f7(%rip), %rsi     # 0x6d192
movl $0x1, %edx
callq 0x9560
movq 0x3f344(%rip), %rdi     # 0x83ff0
movl $0x165, %esi            # imm = 0x165
callq 0x9880
movq %rax, %rbx
leaq 0x26797(%rip), %rsi     # 0x6b457
movl $0x3, %edx
movq %rax, %rdi
callq 0x9560
leaq 0x26fdc(%rip), %rsi     # 0x6bcb0
movl $0x15, %edx
movq %rbx, %rdi
callq 0x9560
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x9480
movsbl %al, %esi
movq %rbx, %rdi
callq 0x9070
movq %rax, %rdi
callq 0x9330
jmp 0x44eb9
testb $0x2, %al
jne 0x44d5e
xorl %r12d, %r12d
movq %r15, %rdi
movq %r14, %rsi
callq 0x9310
leaq 0x8(%r14), %rsi
movq %rax, %rdi
callq 0x9310
leaq 0x10(%r14), %rsi
movq %rax, %rdi
callq 0x9310
movq -0x430(%rbp), %rax
movq -0x18(%rax), %rax
testb $0x2, -0x410(%rbp,%rax)
jne 0x44d5e
leaq 0x1(%r12), %rax
addq $0x18, %r14
cmpq $0x3d, %r12
movq %rax, %r12
jb 0x44d14
leaq -0x430(%rbp), %rdi
callq 0x9120
leaq 0x26f55(%rip), %rsi     # 0x6bcc6
leaq -0x228(%rbp), %rdi
movl $0x8, %edx
callq 0x9920
addq $0x37d8, %rbx           # imm = 0x37D8
movl $0x2460, %edx           # imm = 0x2460
movq %rbx, %rdi
xorl %esi, %esi
callq 0x92b0
movq -0x228(%rbp), %rax
movq -0x18(%rax), %rax
movl -0x208(%rbp,%rax), %eax
testb $0x5, %al
je 0x44e47
movq 0x3f237(%rip), %rdi     # 0x83ff0
leaq 0x26ed9(%rip), %rsi     # 0x6bc99
movl $0x16, %edx
callq 0x9560
movq 0x3f21f(%rip), %rdi     # 0x83ff0
leaq 0x283ba(%rip), %rsi     # 0x6d192
movl $0x1, %edx
callq 0x9560
movq 0x3f207(%rip), %rdi     # 0x83ff0
movl $0x177, %esi            # imm = 0x177
callq 0x9880
movq %rax, %rbx
leaq 0x2665a(%rip), %rsi     # 0x6b457
movl $0x3, %edx
movq %rax, %rdi
callq 0x9560
leaq 0x26ec2(%rip), %rsi     # 0x6bcd3
movl $0x1b, %edx
movq %rbx, %rdi
callq 0x9560
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x9480
movsbl %al, %esi
movq %rbx, %rdi
callq 0x9070
movq %rax, %rdi
callq 0x9330
jmp 0x44ead
testb $0x2, %al
jne 0x44ea1
xorl %r15d, %r15d
leaq -0x228(%rbp), %r14
movq %r14, %rdi
movq %rbx, %rsi
callq 0x9310
leaq 0x8(%rbx), %rsi
movq %rax, %rdi
callq 0x9310
leaq 0x10(%rbx), %rsi
movq %rax, %rdi
callq 0x9310
movq -0x228(%rbp), %rax
movq -0x18(%rax), %rax
testb $0x2, -0x208(%rbp,%rax)
jne 0x44ea1
leaq 0x1(%r15), %rax
addq $0x18, %rbx
cmpq $0x183, %r15            # imm = 0x183
movq %rax, %r15
jb 0x44e55
leaq -0x228(%rbp), %rdi
callq 0x9120
leaq -0x228(%rbp), %rdi
callq 0x9170
leaq -0x430(%rbp), %rdi
callq 0x9170
addq $0x410, %rsp            # imm = 0x410
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
jmp 0x44eee
jmp 0x44eee
jmp 0x44edd
jmp 0x44eee
movq %rax, %rbx
leaq -0x228(%rbp), %rdi
callq 0x9170
jmp 0x44ef1
movq %rax, %rbx
leaq -0x430(%rbp), %rdi
callq 0x9170
movq %rbx, %rdi
callq 0x98b0
nop