2013-03-06 2 views
0

글쎄, 온라인 게임에서 일어나는 일과 같은 것을 개발하려고합니다. 예를 들어, 게임에서 어떤 것을 업그레이드하고 싶다고합시다 (웹 브라우저 게임).온라인 게임 작업 시간, 무엇을 사용할 수 있습니까? Cron 채용 정보?

클릭하면 카운트 다운 시계가 나타납니다.이 "시계"가 완료되면 "무언가"가 업그레이드됩니다. 또 다른 것은 카운트 다운이 0 일 때 온라인 상태 일 필요가 없다는 것입니다. 업그레이드.

PHP를 어떻게 사용했는지 궁금합니다.

답변

2
당신은 매우 "필수적"방식으로 문제에가는

: 동일한을 달성 할 수

로 마무리 조금

  • 마크에게 그것을 기다리

    1. 시작 뭔가
    2. 다르게 보는 것으로 결과 :

      • 은 시간 X에서 업그레이드가
      • 시간 X + t에서 업그레이드 업그레이드를 시작할 때

    3. 그래서, 당신은 현재 시간 + 기간 또는 완료 시간 중 하나를 저장 완료 시작됩니다. 사용자에게 당신은 표시 :

      • 모든 것을하기 전에 : X의 +의 t까지 남은 시간에 대한 카운트 다운이 X + t 후
      • 도달 : A 버튼 업그레이드 시작 후
      • 을 시작합니다 " 업그레이드 완료 "메시지

      업그레이드 상태 (예 : Health Points)에 따라 다른 변수를 수정해야하는 경우 업그레이드 후 데이터베이스의 HP 값을 수정하는 것으로 생각하지 마십시오 완료되었습니다. 완료된 업그레이드의 내역을 기반으로 HP를 계산하십시오.

  • +0

    그래서 데이터베이스에 시간을 저장하고 작업의 "기록"을 확인해야한다고 말하는 것입니다 ... –

    +0

    성능은 어떻습니까? 이것은 나쁜 방법이 아닌가? –

    +0

    이러한 상황에서 캐싱은 계산 된 값 + 현재 시간을 액세스에 저장할 수 있기 때문에 매우 간단합니다. 따라서 캐시의 날짜 이후로 모든 것을 고려하면됩니다. 데이터베이스 시스템에 따라 계산 된 값에 대해 (구체화 된) 뷰를 사용하고 DB가 최적화를 수행하도록 할 수 있습니다. – mensi