快速业务通道

25个PHP游戏编程脚本代码

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-23
s'',''t'',''u'',''v'',''w'',''x'',''y'',''z'');
  $right = array_fill_keys($letters, ''.'');
  $wrong = array();


现在需要一些代码来评估猜测并在完成猜字游戏的过程中显示该单词。
清单 18. 评估猜测并显示进度
  if (stristr($word, $guess)) {
  $show = '''';
  $right[$guess] = $guess;
  $wordletters = str_split($word);
  foreach ($wordletters as $letter) {
  $show .= $right[$letter];
  }
  } else {
  $show = '''';
  $wrong[$guess] = $guess;
  if (count($wrong) == 6) {
  $show = $word;
  } else {
  foreach ($wordletters as $letter) {
  $show .= $right[$letter];
  }
  }
  }


在源代码归档 中,可以看到如何序列化猜测数组并将该数组从一次猜测传递到另一次猜测中。
纵横字谜助手
我知道这样做不合适,但是有时在玩纵横拼字谜时,您不得不费劲地找出以 C 开头并以 T 结尾、包含五个字母的单词。使用为 Hangman 游戏构建的相同单词列表,我们可以轻松地搜索符合某个模式的单词。首先,找到一种传输单词的方法。为了简单起见,用句点替换缺少的字母:$guess = "c...t";。由于正则表达式将把句点处理为单个字符,因此我们可以轻松地遍历单词列表以查找匹配。
清单 19. 遍历单词列表
  foreach ($words as $word) {
  if (preg_match("/^" . 25个PHP游戏编程脚本代码 - 凌众科技

快速业务通道

25个PHP游戏编程脚本代码

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-23
content

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号

POST[''guess''] . "$/",$word)) {
  echo $word . "<br />\n";
  }
  }


根据单词列表的质量及猜测的准确度,我们应当能够得到合理的单词列表以用于可能的匹配。您必须自己决定 “表示 ‘不按规则玩’ 的由五个字母组成的单词” 的谜底是 “chest” 还是 “cheat”。
米德里比斯
米德里比斯是一款文字游戏,玩家在游戏中得到一个简短的故事并用同一类型的不同单词替换主要类型的单词,从而创建同一个故事的更无聊的新版本。阅读以下文本:“I was walking in the park when I found a lake. I jumped in and swallowed too much water. I had to go to the hospital.” 开始用其他单词标记替换单词类型。开始和结束标记带有下划线用于阻止意外的字符串匹配。
清单 20. 用单词标记替换单词类型
  $text = "I was _VERB_ing in the _PLACE_ when I found a _NOUN_.
  I _VERB_ed in, and _VERB_ed too much _NOUN_.  I had to go to the _PLACE_.";


接下来,创建几个基本单词列表。对于本例,我们也不会做得太复杂。
清单 21. 创建几个基本单词列表
  $verbs = array(''pump'', ''jump'', ''walk'', ''swallow'', ''crawl'', ''wail'', ''roll'');
  $places = array(''park'', ''hospital'', ''arctic'', ''ocean'', ''grocery'', ''basement'',
  ''attic'', ''sewer'');
  $nouns = array(''water'', ''lake'', ''spit'', ''foot'', ''worm'',
  ''dirt'', ''river'', ''wankel rotary engine'');


现在可以重复地评估文本来根据需要替换标记。
清单 22. 评估文本
  while (preg_match("/(_VERB_)|(_PLACE_)|(_NOUN_)/", $text, $matches)) {
  switch ($matches[0]) {
  case ''_VERB_'' :
  shuffle($verbs);
  $text = preg_replace($matches[0], current($verbs), $text, 1);
  break;
  case ''_PLACE_'' :
  shuffle($places);
  $text = preg_replace($matches[0], current($places), $text, 1);
  break;
  case ''_NOUN_'' :
  shuffle($nouns);
  $text = preg_replace($matches[0], current($nouns), $te

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号